forgejo-backup-script/backup.sh
2023-04-17 18:14:14 +00:00

26 lines
No EOL
687 B
Bash

#!/bin/bash
set -e
source ./.env
TIMESTAMP=$(date +"%Y-%m-%d_%H-%M-%S")
echo "(${TIMESTAMP}) Starting backup process"
echo "1. Backing up configuration and forgejo folder"
tar -czvf ${BACKUP_DIR}/forgejo-${TIMESTAMP}.tar.gz -C ${FORGEJO_DIR} forgejo docker-compose.yml
echo "2. Stopping Forgejo container"
docker stop forgejo
echo "3. Backing up Postgres database"
docker exec -i forgejo-db-1 pg_dump -U forgejo forgejo > ${BACKUP_DIR}/forgejo-${TIMESTAMP}.sql
echo "4. Starting Forgejo container"
docker start forgejo
#echo "5. Upload to remote"
#./duplicacy.sh
echo "6. Restarting containers"
docker compose -f ${FORGEJO_DIR}/docker-compose.yml up -d
echo "Backup completed!"