Hi Everyone
I need some help
I’m currently selfhosting some of my applications on Digital Ocean and i run a container using Portainer CE. I was wondering how you guys keep backups for the applications running on docker.
I’m currently using Digital ocean’s snapshots feature but is there a better way i could use, any help on this is highly appreciated.
For databases and data I use restic-compose-backup because you can use labels in your docker compose files.
For config files I use a git repository.
Most of mine are lightweight so private repos on git.
For big data I have two NAS that sync on the daily.
Almost everything I run is a Docker container, so I made
/var/lib/docker
a btrfs subvolume, and then I make every day incremental snapshots (cron job) and copy them to a secondary disk (also btrfs, using btrbk). Since they are btrfs snapshots they don’t use a lot of disk space and if I really need to rollback an entire day I canI use docker in Proxmox and i backup all container
I use an Ubuntu vm for all my containers in proxmox and make backups of the vm onto my zfs pool
Uuuh…timeshift and borg??
Hey that is the plot to First Contact.
Proxmox Backup Server (PBS) snapshotting all my VM’s / LXC’s.
External VPS’ and anything that can’t run PBS-Client I am rsync’ing important data into my home network first, then doing a file based backup of that data to PBS via PBS-Client tool. All this is automated through cron jobs.
Those backups then get sync’d to a 2nd datastore for a bit of redundancy.
ZFS snapshots.
duplicati to take live, crash-consistent backups of all my windows servers and VMs with Volume Shadowcopy Service (VSS)
When backing up Docker volumes, should not the docker container be stopped first.?? I can’t se any support for that in the backup tools mentioned.
Yes the containers do need to be stopped. I actually built a project that does exactly that.
Thanks, I will look into this.
I use Nautical. It will stop your containers before performing an RSYNC backup.
I have bind mounts to nfs shares that are backed my zfs pools and last snapshots and sync jobs to another storage device. All containers are ephemeral.
On Proxmox i use for my Backup Solution - Hetzner Storage Bix
I just run a pg_dump through kubectl exec and pipe the stdout to a file on my master node. The same script then runs restic to send encrypted backups over to s3. I use the host name flag on the restic command as kind of a hack to get backups per service name. This eliminates the risk of overwriting files or directories with the same name.
Kopia has been great.
Unraid with Duplicacy and Appdata Backup incremental to Backblaze