Automated database backup solution using WAL-G.
version: '3'
services:
backup:
build: .
environment:
WALG_FILE_PREFIX: /backups
PGHOST: database
PGPORT: 5432
PGUSER: postgres
PGPASSWORD: password
PGDATABASE: mydb
CRON_SCHEDULE: "0 * * * *"
volumes:
- db-data:/var/lib/postgresql/data:ro
- backups:/backups
volumes:
db-data:
external: true
backups:
WALG_FILE_PREFIX
: Backup storage locationPGHOST
,PGPORT
,PGUSER
,PGPASSWORD
,PGDATABASE
: PostgreSQL connection detailsMYSQL_HOST
,MYSQL_USER
,MYSQL_PASSWORD
,MYSQL_DATABASE
: MySQL connection detailsCRON_SCHEDULE
: Backup frequency (cron format)
Hourly backups by default, retaining only the latest full backup. Empty directories are automatically cleaned up.