Init Script

This commit is contained in:
Sevichecc 2023-04-17 18:04:54 +00:00
parent 4599fb718c
commit 28a0a64431

27
backup.sh Normal file
View file

@ -0,0 +1,27 @@
#!/bin/bash
set -e
source ./.env
TIMESTAMP=$(date +"%Y-%m-%d_%H-%M-%S")
echo "(${TIMESTAMP}) Starting backup process"
echo "1. Stopping containers"
docker compose -f ${FORGEJO_DIR}/docker-compose.yml down
echo "2. Backing up configuration and forgejo folder"
tar -czvf ${BACKUP_DIR}/forgejo-${TIMESTAMP}.tar.gz -C ${FORGEJO_DIR} forgejo docker-compose.yml
echo "3. Backing up Postgres database"
DB_CONTAINER=$(docker ps -aqf "name=forgejo-db-1")
docker exec -i ${DB_CONTAINER} pg_dump -U forgejo forgejo > ${BACKUP_DIR}/forgejo-${TIMESTAMP}.sql
echo "4. Removing old backups"
find ${BACKUP_DIR} -mtime +7 -exec rm -rf {} \;
echo "5. Upload to remote"
./duplicacy.sh
echo "6. Restarting containers"
docker compose -f ${FORGEJO_DIR}/docker-compose.yml up -d
echo "Backup completed!"