workouttest_backoffice/Docker/docker_backup.sh
Tibor Bossanyi (Freelancer) 3f209b1280 BO 1.28+2 dev settings
2021-09-17 15:48:39 +02:00

57 lines
2.4 KiB
Bash

#docker run --name mailcow-backup --rm \
# -v ${BACKUP_LOCATION}/mailcow-${DATE}:/backup \
# -v $(docker volume ls -qf name=${CMPS_PRJ}_crypt-vol-1):/crypt:ro \
# ${DEBIAN_DOCKER_IMAGE} /bin/tar --warning='no-file-ignored' --use-compress-program="gzip --rsyncable --best" -Pcvpf /backup/backup_crypt.tar.gz /crypt
#listVar="ps17 wp vmail iredadmin amavisd iredapd mysql performance_schema phpmyadmin piwik postfix psclub roundcubemail sys aitrainer"
#for i in $listVar; do
#backupfile=/root/backup/Mautic_`date '+%Y-%m-%d_%H_%M_%S'`.sql.gz
#mysqldump -u psdemo -h localhost --single-transaction --quick --lock-tables=false mautic | gzip > $backupfile
#listVar="ps17 wp vmail iredadmin amavisd iredapd mysql performance_schema phpmyadmin piwik postfix psclub roundcubemail sys aitrainer"
#for i in $listVar; do
# echo "backup db $i..."
# backupfile=/root/backup/"$i"_`date '+%Y-%m-%d_%H_%M_%S'`.sql.gz
# mysqldump -u psdemo -h localhost --single-transaction --quick --lock-tables=false "$i" | gzip > $backupfile
# sshpass -f /root/.ssh/.scp scp $backupfile bosi@aitrainer.app:/home/bosi/backup/"$i".sql.gz
#done
#docker ps | sed -n 2,100p | grep -v "mailcow" | sed 's/\([^:]*\).*/\1/' | sed 's/\//_/g' | sed 's/\([^"]*\).*/\1/'
#BACKUP_LOCATION=/home/bosi/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all --delete-days 30
BACKUP_LOCATION=/home/bosi/backup
container=mysql
echo "backup container $container"
DATE=$(date +"%Y-%m-%d-%H-%M-%S")
dir="${BACKUP_LOCATION}/mysql-${DATE}"
mkdir -p $dir
chmod 755 $dir
cd $dir
container_id=$(docker ps | grep "mysql:8.0.21" | sed 's/\([^ ]*\).*/\1/')
docker commit -p $container_id backup_mysql
docker save -o backup_mysql.tar backup_mysql
echo "backup configs"
cp /etc/nginx/sites-enabled/* $dir/
config_files="requirements.txt docker-compose.sh docker-compose.yml uwsgi_params Dockerfile wp_php_custom.ini wp_htaccess htpasswd phpmyadmin.config.php"
for i in $config_files; do
cp /home/bosi/backoffice/aitrainer_backoffice/$i $dir/
done
config_dirs="mysqlconf api api_test"
for i in $config_dirs; do
mkdir $dir/$i
cp -r /home/bosi/backoffice/aitrainer_backoffice/$i/* $dir/$i/
done
echo "backup mailcow"
BACKUP_LOCATION=/home/bosi/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all --delete-days 30