1
0
Fork 0
mirror of https://github.com/kou029w/_.git synced 2025-01-31 06:18:07 +00:00
_/postgres-migration/compose.yml

40 lines
1.2 KiB
YAML

services:
pgadmin:
image: dpage/pgadmin4
ports:
- "8080:80"
environment:
PGADMIN_DEFAULT_EMAIL: postgres@db.host.docker.internal
PGADMIN_DEFAULT_PASSWORD: ${POSTGRES_PASSWORD:?}
volumes:
- ./servers.json:/pgadmin4/servers.json:ro
db:
image: postgres:16-alpine
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?}
volumes:
- postgres_data_v16:/var/lib/postgresql/data
# - postgres_data_v17:/var/lib/postgresql/data
old_db:
profiles:
- migration
image: postgres:16-alpine
# image: postgres:16-alpine
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?}
volumes:
- postgres_data_v16:/var/lib/postgresql/data
volumes:
postgres_data_v16:
# postgres_data_v17:
# docker compose down
# editor compose.yml
# add new version volume
# replace old_db.image new → old version
# replace db.volumes old → new version
# docker compose --profile=migration up -d old_db db
# docker compose exec old_db pg_dumpall --clean -U postgres | docker compose exec -T db psql -U postgres
# docker compose up -d
# docker compose --profile=migration down old_db
# editor compose.yml
# remove volume