How to backup docker-compose PostgreSQL database using bup
This command will generate a PostgreSQL dump using pg_dump
and immediately feed it into bup split
(without creating an intermediate file) for backup.
It assumes that .env
contains a line
POSTGRES_USER=myuser
so that the sc
Local .bup
variant
Set BUP_DIR
export BUP_DIR=/var/bup/my-database.bup
source .env && docker-compose exec -u postgres -T postgres pg_dump -U${POSTGRES_USER} | bup -d $BUP_DIR split -n mydb-pgdump.sql
bup remote variant
export BUP_DIR=/var/bup/my-database.index.bup
export BUP_REMOTE=bup-server:/bup/my-database.bup
source .env && docker-compose exec -u postgres -T postgres pg_dump -U${POSTGRES_USER} | bup -d $BUP_DIR split -r $BUP_REMOTE -n mydb-pgdump.sql