Files
homelab-configs/lubelogger/lubelogger-backup.sh
T
tommy c9aac20e73 Add LubeLogger deployment (docker-node01)
Ansible-managed (inline-compose, file-provider router, host :8099), idempotent
(changed=0). PBS-backed pg_dump (daily, keep 14) with verified round-trip restore;
ntfy 'garage' reminder probe (.190); Diun repo-watch for new tags; Homepage
tile+widget. Secrets via ansible-vault / /etc env files / HOMEPAGE_VAR — none in repo.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-02 15:14:20 -05:00

25 lines
761 B
Bash

#!/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