во-первых, вы не должны использовать путь хоста в своем постоянном томе.во-вторых, я думаю, что вам не хватает части в вашем развертывании, вы должны указать каталог PDATA.
для простоты, я поделился со мной развертыванием yml:
1.Упорство Volum Claim:
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: postgres-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 50Gi
2.Конфигурационная карта для хранения posgres env:
apiVersion: v1
kind: ConfigMap
metadata:
name: postgres-config
labels:
app: postgres
data:
POSTGRES_DB: profile
POSTGRES_USER: postgresadmin
POSTGRES_PASSWORD: othmane
PGDATA: /var/lib/postgresql/data/pgdata
3.Развертывание postgres:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: postgres
spec:
replicas: 1
template:
metadata:
labels:
app: postgres
spec:
containers:
- name: postgres
image: postgres:10.4
imagePullPolicy: "IfNotPresent"
ports:
- containerPort: 5432
name: postgres
envFrom:
- configMapRef:
name: postgres-config
volumeMounts:
- name: postgres-db
mountPath: /var/lib/postgresql/data
volumes:
- name: postgres-db
persistentVolumeClaim:
claimName: postgres-pvc
---
apiVersion: v1
kind: Service
metadata:
name: postgres
spec:
selector:
app: postgres
ports:
- protocol: "TCP"
port: 5432
targetPort: 5432
type: ClusterIP