Files
Ansible/files/cron/postgres-backup
T
2025-05-22 17:28:27 +02:00

16 lines
373 B
Bash

#!/bin/bash
# Variables
LOCATION="/home/juulk/docker/postgresql"
RETENTION=7
DATE=$(date +"%Y-%m-%d_%H-%M-%S")
FILENAME="backup-$DATE.sql"
# Dump all databases
docker exec -u postgres postgres pg_dumpall > "$LOCATION/$FILENAME"
# Zip dump
gzip "$LOCATION/$FILENAME"
# Delete old backups
find "$LOCATION" -name "backup-*.sql.gz" -type f -mtime +$RETENTION -exec rm {} \;