Kevin Veen-Birkenbach a1c33c1747 refactored. untested.
2023-12-25 20:31:56 +01:00
2022-01-23 16:06:11 +01:00
2020-12-26 16:31:47 +01:00
2022-01-23 21:37:59 +01:00
2020-10-11 11:54:16 +02:00
2023-11-16 23:02:09 +01:00

Backup Docker Volumes to Local

License: GPL v3

goal

This script backups all docker-volumes with the help of rsync.

scheme

It is part of the following scheme: backup scheme Further information you will find in this blog post.

Backup all volumes

Execute:

./backup-docker-to-local.sh

Recover

database

  docker exec -i mysql_container mysql -uroot -psecret database < db.sql

volume

Execute:


bash ./recover-docker-from-local.sh "{{volume_name}}" "$(sha256sum /etc/machine-id | head -c 64)" "{{version_to_recover}}"

Database

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

Setup

Install pandas

Author

Kevin Veen-Birkenbach

License

This project is licensed under the GNU Affero General Public License v3.0. The full license text is available in the LICENSE file of this repository.

More information

Description
Backup Docker Volumes to Local is a comprehensive solution that leverages rsync to create incremental backups of Docker volumes, providing seamless recovery for both file and database data. Ideal for ensuring the integrity and security of your container data.
Readme AGPL-3.0 403 KiB
Languages
Python 91.3%
Shell 6.4%
Makefile 1.5%
Dockerfile 0.8%