postgres/18
Tianon Gravi b9a533c87b Change `PGDATA` in 18+ to `/var/lib/postgresql/MAJOR/docker`
This is a pretty large breaking change, which is why this only makes the change in 18+ (which is currently in pre-release stages, and not due for GA until September, and pre-release `PGDATA` directories are officially *not supported* on the GA release anyhow).

Concretely, this changes `PGDATA` to `/var/lib/postgresql/MAJOR/docker`, which matches the pre-existing convention/standard of the `pg_ctlcluster`/`postgresql-common` set of commands, and frankly is what we should've done to begin with, in a classic case of Chesterton's Fence (https://en.wikipedia.org/wiki/Wikipedia:Chesterton%27s_fence).

This also changes the `VOLUME` to `/var/lib/postgresql`, which should be more reasonable, and make the upgrade constraints more obvious.

For any users who have been testing the pre-releases, the simplest way to keep your existing data directory is going to be to add `PGDATA=/var/lib/postgresql/data` as an environment variable on your container or adjust your bind-mount from `/var/lib/postgresql/data` to `/var/lib/postgresql/18/docker`, but the *best* way is going to be to refactor your host directory such that your data lives at `18/docker` inside and you can then mount directly to `/var/lib/postgresql` (possibly setting `PGDATA=/var/lib/postgresql/MAJOR/docker` as well, if you want to go overboard on being explicit).
2025-06-06 11:27:31 -07:00
..
alpine3.21 Change `PGDATA` in 18+ to `/var/lib/postgresql/MAJOR/docker` 2025-06-06 11:27:31 -07:00
alpine3.22 Change `PGDATA` in 18+ to `/var/lib/postgresql/MAJOR/docker` 2025-06-06 11:27:31 -07:00
bookworm Change `PGDATA` in 18+ to `/var/lib/postgresql/MAJOR/docker` 2025-06-06 11:27:31 -07:00
bullseye Change `PGDATA` in 18+ to `/var/lib/postgresql/MAJOR/docker` 2025-06-06 11:27:31 -07:00