Fixed
- Compose env-var validation no longer breaks Coolify-style deploys.
docker-compose.ymlpreviously used${VAR:?required}shell-parameter
syntax for the four secrets andPOSTGRES_PASSWORD. Some hosting
platforms (Coolify in particular) parse compose files eagerly and
store the fallback error string ("POSTGRES_PASSWORD is required")
as the literal env-var value whenPOSTGRES_PASSWORDwas unset,
which then collided withDATABASE_URLand broke the running app
withP1000: Authentication failed. Compose now uses plain${VAR}
interpolation; validation moved intodocker-entrypoint.sh, which
fails fast with a clear stderr message listing the unset variables.
Notes
If you upgraded an existing Compose stack from 1.2.x → 1.3.0 and hit
the POSTGRES_PASSWORD is required literal-as-value bug, set
POSTGRES_PASSWORD in your environment to whatever your existing
Postgres data volume was originally initialised with (likely
healthlog if you started from a pre-1.2.1 release), then redeploy.
Postgres only honours POSTGRES_PASSWORD on first volume init — the
existing user keeps the original password regardless of env changes.