digitaldemocratic/sysadm/dd-backup

36 lines
1.4 KiB
Bash
Executable File

#!/bin/bash -e
# bash needed to trap ERR
BACKUP_SERVER="${BACKUP_SERVER-$(hostname)@192.168.100.2}"
trap maintenance_disable SIGHUP SIGINT SIGQUIT SIGABRT SIGTERM ERR
maintenance_disable(){
docker-compose exec -T isard-apps-moodle php7 admin/cli/maintenance.php --disable
docker-compose exec -T -u www-data isard-apps-nextcloud-app php occ maintenance:mode --off
docker-compose run --user=33 isard-apps-wordpress-cli wp maintenance-mode deactivate
}
cd /opt/src/digitaldemocratic/
docker-compose exec -T isard-apps-moodle php7 admin/cli/maintenance.php --enable
docker-compose exec -T -u www-data isard-apps-nextcloud-app php occ maintenance:mode --on
docker-compose run --user=33 isard-apps-wordpress-cli wp maintenance-mode activate
mkdir -p /opt/digitaldemocratic/db_dump
docker-compose exec -T isard-apps-postgresql pg_dumpall -U admin > /opt/digitaldemocratic/db_dump/postgres.sql
docker-compose exec -T isard-apps-mariadb sh -c 'mysqldump -p"$MYSQL_ROOT_PASSWORD" --all-databases --all-tablespaces' > /opt/digitaldemocratic/db_dump/mariadb.sql
docker-compose exec -T isard-apps-redis redis-cli SAVE
docker-compose exec -T isard-apps-redis cat dump.rdb > /opt/digitaldemocratic/db_dump/redis.rdb
rsync -aHAX --del /opt/digitaldemocratic/ $BACKUP_SERVER:opt_digitaldemocratic/
rsync -aHAX --del /opt/src/ $BACKUP_SERVER:opt_src/
date +"%Y-%m-%d_%H:%M:%S" | ssh $BACKUP_SERVER tee backup_date
maintenance_disable