apiVersion: apps/v1 kind: ReplicaSet metadata: name: mysql # labels so that we can bind a Service to this Pod labels: app: mysql spec: replicas: 1 selector: matchLabels: app: mysql template: metadata: labels: app: mysql spec: containers: - name: database image: mysql resources: requests: cpu: 1 memory: 2Gi env: # Environment variables are not a best practice for security, # but we're using them here for brevity in the example. # See Chapter 11 for better options. - name: MYSQL_ROOT_PASSWORD value: some-password-here livenessProbe: tcpSocket: port: 3306 ports: - containerPort: 3306 volumeMounts: - name: database # /var/lib/mysql is where MySQL stores its databases mountPath: "/var/lib/mysql" volumes: - name: database persistentVolumeClaim: claimName: database