gitea: try to automate backup with backrest pre/post hooks and pgdump

This commit is contained in:
v.karaychentsev
2026-02-20 19:24:34 +03:00
parent 978d745449
commit 2cb4863e38
3 changed files with 34 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
# run pg_dump
bash /home/backups/docker/gitea/dump_db.sh
# stop gitea
docker compose -f /home/backups/docker/gitea/docker-compose.yaml stop

View File

@@ -0,0 +1,5 @@
# start gitea
docker compose -f /home/backups/docker/gitea/docker-compose.yaml start
# remove temp backup file
rm -f /srv/backups/pgdumps/gitea/pg.dump

View File

@@ -0,0 +1,24 @@
#!/bin/bash
set -e
CONTAINER="gitea_pg_db"
USER="gitea"
DB="gitea"
BACKUP_DIR="/srv/backups/pgdumps/gitea"
TMP_FILE="$BACKUP_DIR/pg.dump.tmp"
FINAL_FILE="$BACKUP_DIR/pg.dump"
echo "Starting [$DB] pg_dump..."
mkdir -p "$BACKUP_DIR"
# remove old backup file
rm -f "$TMP_FILE" "$FINAL_FILE"
docker exec -t "$CONTAINER" \
sh -lc "pg_dump -U $USER -d $DB -Fc -Z 0 --no-owner --no-privileges" \
> "$TMP_FILE"
mv "$TMP_FILE" "$FINAL_FILE"
echo "Done: [$DB] backup saved to $FINAL_FILE"