woj-server/resource/deploy/db.yaml

80 lines
1.6 KiB
YAML

---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
namespace: woj
name: db-pvc
labels:
app: db
spec:
accessModes:
- ReadWriteOnce
storageClassName: local-path
resources:
requests:
storage: 5Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: woj
name: db-deployment
labels:
app: db
spec:
selector:
matchLabels:
app: db
template:
metadata:
namespace: woj
name: db-pod
labels:
app: db
spec:
containers:
- name: db
image: docker.io/library/postgres:16-alpine
imagePullPolicy: IfNotPresent
ports:
- containerPort: 5432
env:
- name: POSTGRES_USER
valueFrom:
configMapKeyRef:
name: shared-config
key: POSTGRES_USER
- name: POSTGRES_PASSWORD
valueFrom:
configMapKeyRef:
name: shared-config
key: POSTGRES_PASSWORD
- name: POSTGRES_DB
valueFrom:
configMapKeyRef:
name: shared-config
key: POSTGRES_DB
volumeMounts:
- name: db-vol
mountPath: /var/lib/postgresql/data
volumes:
- name: db-vol
persistentVolumeClaim:
claimName: db-pvc
---
apiVersion: v1
kind: Service
metadata:
namespace: woj
name: db-service
labels:
app: db
spec:
type: ClusterIP
selector:
app: db
ports:
- protocol: TCP
port: 5432
targetPort: 5432