Build the container
First you have to clone the repo and build the container
git clone https://github.com/dugite-code/volume-backup.git cd volume-backup docker image build -t vbackup:1.0 .
Now you can run the container mounting the
/volume and your
docker run -v [volume-name]:/volume -v [backup-dir]:/backup --rm vbackup:1.0 backup
Additional rdiff-backup options and be passed via the
-o switch and a quoted option for example
-o "--exclude ignore.me"
To restore you must supply some form of options i.e.
-o "-r 10D" or restore backup from 10 Days ago
docker run -v [volume-name]:/volume -v [backup-dir]:/backup --rm vbackup:1.0 restore -o "-r 10D"
Trimming old files
With incremental backups it's important to occasionally trim old files that just don't exist anymore. Like Restore you must provide some form of option.
Prior to doing a backup I will run this command to remove files older than 20 Backups
docker run -v [backup-dir]:/backup --rm vbackup:1.0 remote -v -o "--remove-older-than 20B"
I hope you found this helpful. It's not a very clean script, I had to hack apart the reference script quite a bit in order to get it all working. But it serves it's purpose quite well.