apiVersion: apps/v1
kind: Deployment
metadata:
    name: postgres-deployment
spec:
    replicas: 1
    selector:
        matchLabels:
            component: postgres
    template: 
        metadata:
            labels:
                component: postgres
        spec:
            volumes:
                - name: postgres-storage
                  persistentVolumeClaim:
                    claimName: database-persistent-volume-claim 
            containers:
                - name: postgres
                  image: postgres
                  ports: 
                    - containerPort: 5432
                  volumeMounts:
                    - name: postgres-storage
                      mountPath: /var/lib/postgresql/data
                      subPath: postgres
                  env:
                    - name: POSTGRES_PASSWORD
                      valueFrom: 
                        secretKeyRef:
                            name: pgpassword
                            key: PGPASSWORD
