mirror of
https://github.com/kevinveenbirkenbach/docker-volume-backup.git
synced 2024-10-31 23:33:11 +01:00
contains scripts to manage docker
.travis.yml | ||
docker-volume-backup.sh | ||
docker-volume-recover.sh | ||
LICENSE | ||
README.md |
docker-volume-backup
goal
This script backups all docker-volumes with the help of rsync.
scheme
It is part of the following scheme: Further information you will find in this blog post.
Backup
Execute:
./docker-volume-backup.sh
Recover
Execute:
./docker-volume-recover.sh {{volume_name}} {{backup_path}}
Debug
To checkout what's going on in the mount container type in the following command:
docker run -it --entrypoint /bin/sh --rm --volumes-from {{container_name}} -v /Backups/:/Backups/ kevinveenbirkenbach/alpine-rsync
Manual Backup
rsync -aPvv '{{source_path}}/' {{destination_path}}";
Test
Delete the volume.
docker rm -f container-name
docker volume rm volume-name
Recover the volume:
docker volume create volume-name
docker run --rm -v volume-name:/recover/ -v ~/backup/:/backup/ "kevinveenbirkenbach/alpine-rsync" sh -c "rsync -avv /backup/ /recover/"
Restart the container.
Optimation
This setup script is not optimized yet for performance. Please optimized this script for performance if you want to use it in a professional environment.