ReferenceConfigurationCompose Services
postgres
Compose service `postgres`, runtime configuration across dev and prod
Compose service postgres.
Dev (compose.dev.yml)
Image: docker.io/postgres:18-alpine
Ports:
5432:5432
Environment variables:
| Variable | Source |
|---|---|
POSTGRES_USER | postgres |
POSTGRES_PASSWORD | secret |
Volumes:
{"type":"volume","source":"postgres","target":"/var/lib/postgresql/data"}{"type":"bind","source":"./init-db.sql","target":"/docker-entrypoint-initdb.d/init-db.sql"}
Restart policy: unless-stopped
Networks: intranet
Prod (compose.prod.yml)
Image: docker.io/postgres:18-alpine
Command: postgres -c ssl=on -c ssl_cert_file=/var/lib/postgresql/server.crt -c ssl_key_file=/var/lib/postgresql/server.key -c ssl_ca_file=/var/lib/postgresql/pg-ca.crt
Ports: none (internal only)
Environment variables:
| Variable | Source |
|---|---|
POSTGRES_USER | ${PG_USER} |
POSTGRES_PASSWORD | ${PG_PASSWORD} |
Volumes:
{"type":"volume","source":"postgres","target":"/var/lib/postgresql/data"}{"type":"bind","source":"./init-db.sql","target":"/docker-entrypoint-initdb.d/init-db.sql"}{"type":"bind","source":"./postgres/server.crt","target":"/var/lib/postgresql/server.crt","read_only":true}{"type":"bind","source":"./postgres/server.key","target":"/var/lib/postgresql/server.key","read_only":true}{"type":"bind","source":"./postgres/pg-ca.crt","target":"/var/lib/postgresql/pg-ca.crt","read_only":true}
Healthcheck:
{
"test": [
"CMD-SHELL",
"pg_isready -U $PG_USER"
],
"interval": "10s",
"timeout": "5s",
"start_period": "30s",
"retries": 5
}Restart policy: unless-stopped
Networks: intranet
Generated from platform/dev/compose.dev.yml and platform/prod/compose.prod.yml at build time.