Update make_backup.sh

This commit is contained in:
David Rotermund 2024-07-16 17:54:31 +02:00 committed by GitHub
parent bf2dbd3d18
commit b9358c5f1b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,27 +1,7 @@
#!/bin/bash
rsync -avz --delete -e "ssh -i /root/backup/backup" /root overleaf@backup.zfn.uni-bremen.de:/home/overleaf/backup_root/root
# Set variables
REMOTE_USER="overleaf"
REMOTE_HOST="backup.zfn.uni-bremen.de"
REMOTE_DIR="/home/overleaf/backup_docker"
SSH_KEY="/root/backup/backup"
EXCLUDED_VOLUME="overleafserver_overleaf_tex2024"
# Get list of all Docker volumes, excluding the specified volume
volumes=$(docker volume ls --format "{{.Name}}" | grep -v "^$EXCLUDED_VOLUME$")
# Backup each volume
for volume in $volumes
do
echo "Backing up volume: $volume"
# Create a new container from busybox image, mount the volume and tar it up,
# then pipe it directly to the remote server via SSH
docker run --rm -v $volume:/volume busybox tar cf - /volume | \
ssh -i $SSH_KEY $REMOTE_USER@$REMOTE_HOST "cat > $REMOTE_DIR/$volume.tar"
echo "Finished backing up $volume"
done
docker exec -it backup /bin/sh -c 'cd /data/ ; rsync -avz --delete -e "ssh -o StrictHostKeyChecking=accept-new -i /data/backup" /data/backup_docker overleaf@backup.zfn.uni-bremen.de:/home/overleaf/backup_docker/'
echo "Backup completed"