apiVersion: v1 kind: Service metadata: name: postgresql spec: type: ClusterIP # Internal access only selector: app: postgresql ports: - protocol: TCP port: 5432 targetPort: 5432 --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: postgres-storage spec: accessModes: - ReadWriteOnce storageClassName: openebs-hostpath # Your storage class resources: requests: storage: 20Gi # Adjust storage as needed --- apiVersion: v1 kind: Pod metadata: name: postgresql labels: app: postgresql spec: containers: - name: postgres image: postgres:latest # Standard PostgreSQL image args: - -c - max_connections=2000 env: - name: POSTGRES_DB value: "payphone" - name: POSTGRES_USER value: "payphone" - name: POSTGRES_PASSWORD value: "payphone" ports: - containerPort: 5432 volumeMounts: - name: postgres-storage mountPath: /var/lib/postgresql/data resources: requests: cpu: "1.5" memory: "3Gi" limits: cpu: "2" memory: "4Gi" volumes: - name: postgres-storage persistentVolumeClaim: claimName: postgres-storage restartPolicy: Always