Files
projects-platform/postgres.yaml
2023-09-18 22:31:19 +02:00

115 lines
2.2 KiB
YAML

kind: PersistentVolume
apiVersion: v1
metadata:
name: postgres-pv-volume
labels:
type: local
app: postgres
spec:
storageClassName: manual
capacity:
storage: 1Gi
accessModes:
- ReadWriteMany
hostPath:
path: "/mnt/data"
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: postgres-pv-claim
labels:
app: postgres
spec:
storageClassName: manual
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
# apiVersion: v1
# kind: ConfigMap
# metadata:
# name: postgres-config
# labels:
# app: postgres
# data:
# POSTGRES_DB: carrramba_encore_rate
# POSTGRES_USER: postgres
# POSTGRES_PASSWORD: password
# ---
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: postgres
spec:
replicas: 1
selector:
matchLabels:
app: postgres
template:
metadata:
labels:
app: postgres
service: postgres
spec:
containers:
- name: postgres
image: postgres:15.3
# command: [ "sh", "-c"]
# args: ["while true; do echo 'yo' && sleep 5; done;"]
# imagePullPolicy: "IfNotPresent"
ports:
- containerPort: 5432
env:
- name: POSTGRES_DB
value: carrramba_encore_rate
- name: POSTGRES_USER
value: postgres
- name: POSTGRES_PASSWORD
value: password
# envFrom:
# - configMapRef:
# name: postgres-config
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: postgredb
- mountPath: /docker-entrypoint-initdb.d
name: initdb
volumes:
- name: postgredb
persistentVolumeClaim:
claimName: postgres-pv-claim
- name: initdb
configMap:
name: postgres-initdb-config
---
apiVersion: v1
kind: ConfigMap
metadata:
name: postgres-initdb-config
data:
initdb.sql: |
CREATE DATABASE carrramba_encore_rate;
CREATE EXTENSION IF NOT EXISTS pg_trgm;
---
apiVersion: v1
kind: Service
metadata:
name: postgres
labels:
app: postgres
spec:
type: ClusterIP
ports:
- port: 5432
targetPort: 5432
selector:
app: postgres