So, this is a rather odd request of a backup solution, but it’s kinda what I want right now.
I’m still relatively new to Linux and self-hosting in general
A few years ago, my cousin and I were hosting our own Minecraft server. It had a mod that would create backups of the world folder. It zipped it up, named it “yyyy-mm-dd.zip” and placed it in a backups folder somewhere on the server.
The most important feature that I want is actually the next part. It would allow us to specify how many backups we wanted to keep, and also how frequent we wanted the backup to run.
We set it to backup daily, and keep 14 days of backups. After that, it would delete the oldest one, and make a new backup.
I would like to replicate that functionality! Specify the frequency, but ALSO how many backups to keep.
Idk if it’s asking too much. I’ve tried doing some research, but I’m not sure where to start.
Ideally I’d like something I can host on docker. Maybe connect to a Google account or something so it can be off-site.
I only want to use it for docker config files, compose files, container folders, etc.
I’ve looked into restic, but it seems it encrypts the backups, and you NEED a working copy of restic to restore? I’d like something simple like a .zip file instead or something, to be able to just download, unzip, and spin up the compose file and stuff.
Sorry for the wall of text, thanks in advance if you have any suggestions!
P.S. I’m pretty sure the upload to Google or some other service would have to be a separate program, so I’m looking into that as well.
Update: I want to thank everyone for your wonderful suggestions. As of right now, I have settled on a docker container of Duplicati, backed up to my Mega.nz account. Last I checked they lowered the storage limit, but I was lucky to snag an account when they were offing 50GB free when you joined, so it’s working out well so far. I did have to abandon my original idea, and decided to look for something with deduplication (now that I know what it is!) And encryption.
I would say since you want simple .zip archives, this could be something to script yourself since it would be fairly easy.
Basically:
- Zip the server into a dated zip file
- Check for old zip files and delete
- Upload zip files using rclone to remote storage (gdrive, etc)
- Optionally send a notification to discord, telegram, healthchecks.io, or something like that
The downside of zipping backups like this is obviously storage space, every backup takes up the full amount of space of the server, since there’s no deduplication or incremental versioning happening.
@MangoPenguin
If you’re scripting it yourself, https://www.complete.org/dar/ gives a few extra niceties over just zip files or tarballs.
Thank @jgoerzen for the nice summary.
@koinu
You should be able to achieve this with Kopia
I’m trying this out right now with Kopia for docker, and I’m not the biggest fan of (seemingly) not being able to turn off the obfuscation, and making it do just a single .zip file or .tar or whatever. Also, having a hard time setting up drive integration with the GUI, but that’s just my fault. I’m not familiar with rclone or Kopia at all.