apiVersion: v1 kind: Service metadata: name: mysql-service namespace: smartbuilding-namespace labels: app: mysql spec: ports: - port: 3306 targetPort: 3306 clusterIP: None selector: app: mysql --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mysql-pvc namespace: smartbuilding-namespace spec: accessModes: - ReadWriteOnce resources: requests: storage: 1Gi --- apiVersion: apps/v1 kind: StatefulSet metadata: name: mysql-statefulset namespace: smartbuilding-namespace spec: serviceName: "mysql-service" replicas: 1 selector: matchLabels: app: mysql template: metadata: labels: app: mysql spec: containers: - name: mysql image: mysql:8.0 env: - name: MYSQL_ROOT_PASSWORD valueFrom: secretKeyRef: name: db-secrets key: password - name: MYSQL_DATABASE value: "user" ports: - containerPort: 3306 name: mysql volumeMounts: - name: mysql-persistent-storage mountPath: /var/lib/mysql - name: mysql-initdb mountPath: /docker-entrypoint-initdb.d volumes: - name: mysql-persistent-storage persistentVolumeClaim: claimName: mysql-pvc - name: mysql-initdb configMap: name: mysql-initdb-config