Pessoal, para quem tentou completar a aula e não conseguiu devido aos erros na criação dos arquivos statefulset.yaml e deployment.yaml e depois o cadastro e listagem dos produtos.
deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: aplicacao-deployment
spec:
selector:
matchLabels:
name: aplicacao-pod
template:
metadata:
labels:
name: aplicacao-pod
spec:
containers:
- name: container-aplicacao-loja
image: rafanercessian/aplicacao-loja:v1
ports:
- containerPort: 80
statefulset.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: statefulset-mysql
spec:
selector:
matchLabels:
name: mysql #precisa ter o spec.selector.matchLabels.name = spec.template.metadata.labels.name
serviceName: db
template:
metadata:
labels:
name: mysql
spec:
containers:
- name: container-mysql
image: mysql:5.5
ports:
- containerPort: 3306
env:
- name: MYSQL_DATABASE
value: "loja"
- name: MYSQL_USER
value: "root"
- name: MYSQL_ALLOW_EMPTY_PASSWORD
value: "1"
volumeMounts:
- name: volume-mysql
mountPath: /var/lib/mysql
volumes:
- name: volume-mysql
persistentVolumeClaim:
claimName: configuracao-mysql
Script de criação do banco
mysql -u root
use loja;
create table produtos (id integer auto_increment primary key, nome varchar(255), preco DECIMAL(10,2));
alter table produtos add column usado boolean default false;
alter table produtos add column descricao varchar(255);
create table categorias (id integer auto_increment primary key, nome varchar(255));
insert into categorias (nome) values ("Futebol"), ("Volei"), ("Tenis");
alter table produtos add column categoria_id integer;
update produtos set categoria_id = 1;