scripts/docker2-backup.sh

36 lines
1 KiB
Bash

#!/bin/bash
# Get today's date for our backup filename
backupDate=$(date +'%F')
# this just prints the formated date variable to the console if you want to see it.
echo $backupDate
# move to the path where you will keep all of yoru docker configurations and data
cd /docker
# stop ALL containers
docker stop $(docker ps -a -q)
cd /home/debian/backup
#create a tar archive of your docker parent folder
tar --exclude='./backup/' -czvf $backupDate-backup-docker2.tar.gz /docker
cd /docker
#Start ALL containers
docker start $(docker ps -a -q)
# now go back to backup directory, and copy my backup file to my NAS
cd /home/debian/backup
echo ""
echo "Backup copy is running..."
# use secure copy to copy the tar archive to your final backup location (in my case a mounted NFS share)
rclone copy $backupDate-backup-docker2.tar.gz b2:rgm-docker2 --progress
# remove the tar file from the main home folder after it's copied
rm -rf $backupDate-backup-docker2.tar.gz
echo "Local backup file removed..."
echo "Docker Backup Completed Successfully!"