seguem os arquivos ajustados e testados no minikube linux:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: configuracao-mysql
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 3Gi
apiVersion: apps/v1
kind: Deployment
metadata:
name: aplicacao-deployment
spec:
selector:
matchLabels:
app: aplicacao-pod
template:
metadata:
labels:
app: aplicacao-pod
spec:
containers:
- name: container-aplicacao-loja
image: rafanercessian/aplicacao-loja:v1
ports:
- containerPort: 80
apiVersion: v1
kind: Service
metadata:
name: servico-aplicacao
spec:
type: LoadBalancer
ports:
- port: 80
targetPort: 80 # Certifique-se que corresponde ao containerPort
selector:
app: aplicacao-pod
externalTrafficPolicy: Local
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: statefulset-mysql
spec:
serviceName: db
selector:
matchLabels:
app: mysql
template:
metadata:
labels:
app: mysql
spec:
containers:
- name: container-mysql
image: mysql:5.5
ports:
- containerPort: 3306
env:
- name: MYSQL_DATABASE
value: "loja"
- name: MYSQL_USER
value: "admin"
- name: MYSQL_ALLOW_EMPTY_PASSWORD
value: "true"
volumeMounts:
- name: volume-mysql
mountPath: /var/lib/mysql
volumes:
- name: volume-mysql
persistentVolumeClaim:
claimName: configuracao-mysql
apiVersion: v1
kind: Service
metadata:
name: db
spec:
type: ClusterIP
ports:
- port: 3306
selector:
name: mysql