--- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: job-orchestrator-postgres-pvc spec: storageClassName: longhorn accessModes: - ReadWriteOnce resources: requests: storage: 10Gi --- apiVersion: apps/v1 kind: Deployment metadata: name: job-orchestrator-postgres spec: replicas: 1 selector: matchLabels: app: job-orchestrator-postgres template: metadata: labels: app: job-orchestrator-postgres spec: volumes: - name: data persistentVolumeClaim: claimName: job-orchestrator-postgres-pvc containers: - name: job-orchestrator-postgres image: "postgres:13" envFrom: - configMapRef: name: job-orchestrator-postgres-config volumeMounts: - mountPath: /var/lib/postgresql name: data --- apiVersion: v1 kind: Service metadata: name: job-orchestrator-postgres spec: selector: app: job-orchestrator-postgres ports: - name: job-orchestrator-postgres protocol: TCP port: 5432 targetPort: 5432 --- apiVersion: v1 kind: ConfigMap metadata: name: job-orchestrator-postgres-config data: POSTGRES_PASSWORD: "joborchestratorpostgressupersecret" POSTGRES_USER: "joborchestrator" POSTGRES_DB: "joborchestrator"