#!/usr/bin/env bash # Nightly Postgres backup for the Daily Quote app. Invoked by quoteapp-backup.timer. set -euo pipefail BACKUP_DIR="/home/exedev/backups" RETENTION_DAYS=7 TIMESTAMP="$(date -u +%Y%m%dT%H%M%SZ)" FILE="$BACKUP_DIR/quoteapp-$TIMESTAMP.sql.gz" mkdir -p "$BACKUP_DIR" docker exec quoteapp-postgres pg_dump -U quoteapp -d quoteapp | gzip > "$FILE" find "$BACKUP_DIR" -name 'quoteapp-*.sql.gz' -mtime +"$RETENTION_DAYS" -delete echo "Backed up quoteapp database to $FILE"