Adds a logical-dump path so apps with a database can be backed up with zero downtime and full consistency, instead of stopping the container. - backup_db.sh: dump each declared DB live (mysqldump --single-transaction / pg_dump / sqlite3 .backup), exclude the raw data dir from the snapshot, and replay the dump on restore (pre-start rehydrate for sqlite, post-start load for server engines). - Databases are declared via a 'libreportal.backup.db' compose label so the metadata travels with the app in the snapshot. - New 'auto' strategy (now the default): live where a DB is dumpable or the app is marked live-safe, stop-snapshot-start otherwise. Explicit stop/pause/live remain as overrides. - restic/borg/kopia adapters honour an exclude list on the live path. - Manifest records the resolved per-app strategy and dumped databases. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Signed-off-by: librelad <librelad@digitalangels.vip>
10 lines
1.4 KiB
Plaintext
10 lines
1.4 KiB
Plaintext
# ================================================================================
|
|
# Backup Engine - **ADVANCED** Engine-level knobs most users won't need to touch
|
|
# ================================================================================
|
|
CFG_BACKUP_ENGINE=restic # Default Backup Engine - Fallback engine for new locations (each location can override) [restic:Restic|borg:BorgBackup|kopia:Kopia]
|
|
CFG_BACKUP_DEFAULT_PATH=/docker/backups # Default Backup Location - Base directory for locations set to Automatic path mode; each location lives in its own numbered subfolder (<path>/<id>)
|
|
CFG_BACKUP_STRATEGY=auto # Backup Strategy - How containers are quiesced before snapshotting [auto:Automatic — live where safe, stop otherwise (recommended)|stop-snapshot-start:Stop → snapshot → start (always safe)|pause-snapshot-unpause:Pause → snapshot → unpause (less downtime)|live:Live — snapshot while running (force)]
|
|
CFG_BACKUP_VERIFY_AFTER=true # Verify After Backup - Run integrity check after each backup
|
|
CFG_BACKUP_VERIFY_DATA_PERCENT=5 # Verify Data Sample % - Percentage of repo data to checksum-verify weekly
|
|
CFG_BACKUP_PARALLEL_REPOS=true # Parallel Repos - Push to all enabled locations in parallel
|