apiVersion: apps/v1 kind: StatefulSet metadata: name: postgres13 namespace: postgres spec: serviceName: postgres13 replicas: 1 selector: matchLabels: app: postgres13 template: metadata: labels: app: postgres13 spec: containers: - name: postgres13 image: postgres:13 # command: ["sh"] # args: ["-c", "while true; do echo $(date -u) >> /tmp/run.log; sleep 5; done"] resources: limits: memory: 500Mi cpu: 1 requests: memory: 200Mi cpu: 500m ports: - containerPort: 5432 env: - name: POSTGRES_DB value: quay - name: POSTGRES_USER value: quay - name: POSTGRES_PASSWORD value: quay volumeMounts: - mountPath: /var/lib/postgresql/data name: postgres volumes: - name: postgres persistentVolumeClaim: claimName: postgres13-pvc --- apiVersion: v1 kind: Service metadata: name: postgres13 labels: name: postgres13 namespace: postgres spec: type: ClusterIP ports: - port: 5432 name: postgres selector: app: postgres13 --- apiVersion: v1 kind: PersistentVolume metadata: name: postgres13-pv spec: storageClassName: "" capacity: storage: 2Gi accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain volumeMode: Filesystem hostPath: path: /mnt/nfs_share/postgres13lp type: Directory --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: postgres13-pvc namespace: postgres spec: storageClassName: "" volumeName: postgres13-pv accessModes: - ReadWriteMany volumeMode: Filesystem resources: requests: storage: 2Gi