basaHoushanApi/backup.sh

21 lines
654 B
Bash

#!/bin/sh
set -e
echo "Starting backups service"
sleep "${API_DB_BACKUP_DELAY}"
while true; do
NOW=$(date "+%Y-%m-%d_%H-%M")
FILE="/srv/houshan-postgres/backups/houshan-postgres-backup-${NOW}.backup"
echo "[${NOW}] Running pg_dump (custom format)..."
pg_dump -h postgres -p 5432 -d "${API_DB_NAME}" -U "${API_DB_USER}" -F c -f "${FILE}"
echo "[${NOW}] Backup saved to ${FILE}"
echo "[${NOW}] Keeping last 3 backups..."
ls -1t /srv/houshan-postgres/backups/houshan-postgres-backup-*.backup | tail -n +4 | xargs -r rm -f
echo "[${NOW}] Sleeping for ${API_DB_BACKUP_INTERVAL}"
sleep "${API_DB_BACKUP_INTERVAL}"
done