#!/bin/bash # LubeLogger Postgres logical backup -> Proxmox Backup Server. # Installed at /usr/local/bin/lubelogger-backup.sh ; driven by lubelogger-backup.timer. set -euo pipefail source /etc/lubelogger-backup.env export PBS_PASSWORD PBS_FINGERPRINT TMPDIR=$(mktemp -d) trap 'rm -rf "$TMPDIR"' EXIT # Consistent logical dump (includes the `app` schema + data). App stays online. docker exec lubelogger-db pg_dump -U lubelogger lubelogger > "$TMPDIR/lubelogger.sql" # Push to PBS proxmox-backup-client backup \ "lubelogger-db.pxar:$TMPDIR" \ --repository "$PBS_REPOSITORY" \ --backup-type host \ --backup-id lubelogger # Retain ~14 daily snapshots proxmox-backup-client prune "host/lubelogger" \ --repository "$PBS_REPOSITORY" \ --keep-daily 14