Outline: configure backups
This commit is contained in:
25
files/outline/backup.sh.j2
Normal file
25
files/outline/backup.sh.j2
Normal file
@ -0,0 +1,25 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -eu
|
||||
set -o pipefail
|
||||
|
||||
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
||||
BACKUP_FILE="outline_postgres_${TIMESTAMP}.sql.gz"
|
||||
|
||||
echo "Outline: backing up PostgreSQL database"
|
||||
|
||||
docker compose --file "{{ base_dir }}/docker-compose.yml" exec \
|
||||
outline_postgres \
|
||||
pg_dump \
|
||||
-U "{{ outline_postgres_user }}" \
|
||||
"{{ outline_postgres_database }}" \
|
||||
| gzip > "{{ postgres_backups_dir }}/${BACKUP_FILE}"
|
||||
|
||||
echo "Outline: PostgreSQL backup saved to {{ postgres_backups_dir }}/${BACKUP_FILE}"
|
||||
|
||||
echo "Outline: removing old backups"
|
||||
|
||||
# Keep only the 3 most recent backups
|
||||
keep-files.py "{{ postgres_backups_dir }}" --keep 3
|
||||
|
||||
echo "Outline: backup completed successfully."
|
Reference in New Issue
Block a user