svg

Podman: Postgresql and PGAdmin

linux Podman

Podman pod manifest untuk menjalankan PostgreSQL dan PGAdmin:

postgres-pod.yml

# Created with podman-5.0.3
apiVersion: v1
kind: Pod
metadata:
  labels:
    app: posgres-pod
  name: posgres-pod
spec:
  containers:
  - name: postgres17
    image: docker.io/library/postgres:17
    args:
    - -c
    - ssl=on
    - -c
    - ssl_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
    - -c
    - ssl_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
    env:
    - name: POSTGRES_USER
      value: postgres
    - name: POSTGRES_PASSWORD
      value: StrongPasswordHere
    ports:
    - containerPort: 5432
      hostPort: 5432
    - containerPort: 80
      hostPort: 5433
    volumeMounts:
    - mountPath: /var/lib/postgresql/data
      name: postgres17-pvc
  - name: pgadmin
    image: docker.io/dpage/pgadmin4:latest
    env:
    - name: PGADMIN_DEFAULT_EMAIL
      value: admin@sumarsono.com
    - name: PGADMIN_DEFAULT_PASSWORD
      value: SecureStringHere
    - name: PGADMIN_CONFIG_ENHANCED_COOKIE_PROTECTION
      value: "True"
    securityContext: {}
  volumes:
  - name: postgres17-pvc
    persistentVolumeClaim:
      claimName: postgres17-data

Jalankan dengan perintah:

podman kube play postgres-pod.yml

Check log dengan perintah:

podman pod logs -f postgres-pod