I know, and read, a lot of posts here about backing up Docker volumes and data. The problem is that everyone has different setup, context and needs. So I need some help deciding what is best (and easy to manage) solution for my use case.

My setup is fairly simple. I only use docker compose files, have one service per directory and all services are using named volumes. Some have driver: local to mount a local folder with config (always located in the same directory of the service). Each docker-compose.yaml file has a backup container which is offen/docker-volume-backup to backup the volumes. These backups are stored in a different folder (the same for all backups /media/storage/backups/). I also have a service with Duplicati to backup the volume backups and some extra data (Nextcloud) to a remote server.

The reason why I use offen/docker-volume-backup is to shut down some containers for extra safety but I’m not sure I actually need this because I’m the only user and I’m not planning on opening my server for other user.

Before I implemented docker-volume-backup and Duplicati all containers used bind mounts because that’s less abstract for me, to actually see the files.

Now, my question is: is this a good setup? Is there an easier setup with less components/steps? Is it, for example, also good if I go back to bind mounts and just backup everything with Duplicati when I’m asleep at night?

Thank you for all the great advise!

  • Leolele99@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    offen docker-volume-backup actually works fine with bind mounts. I have been using it as my backup solution, backing up locally and to a backblaze s3 storage every night, pruning backups that are older than a week.

    I like it because it allows me to shutdown containers & execute commands, like dumping a sql database before backup. Setting it up with proper Telegram Notifications is also great, as I always know when my backups fail or grow in size too large due to configuration errors.