I know that for data storage the best bet is a NAS and RAID1 or something in that vein, but what about all the docker containers you are running, carefully configured services on your rpi, installed *arr services on your PC, etc.?

Do you have a simple way to automate backups and re-installs of these as well or are you just resigned to having to eventually reconfigure them all when the SD card fails, your OS needs a reinstall or the disk dies?

  • rentar42
    link
    fedilink
    278 months ago

    There’s lots of very good approaches in the comments.

    But I’d like to play the devil’s advocate: how many of you have actually recovered from a disaster that way? Ideally as a test, of course.

    A backup system that has never done a restore operations must be assumed to be broken. similar logic should be applied to disaster recovery.

    And no: I use Ansible/Docker combined approach that I’m reasonably sure could quite easily recover most stuff, but I’ve not yet fully rebuilt from just that yet.

    • Human Crayon
      link
      fedilink
      English
      48 months ago

      I have (more than I’d like to admit) recovered entirely from backups.

      I run proxmox, everything else in a VM. All VMs get backed up to three different places once a week, backups are tested monthly on a rando proxmox box to make sure they still work. I do like the backup system built into it, serves my needs well.

      Proxmox could die and it wouldn’t make much of a difference. I reinstall proxmox, restore the VMs and I’m good to go again.

    • Dandroid
      link
      fedilink
      English
      38 months ago

      I restored from a backup when I swapped to a bigger SSD. Worked perfectly first try. I use rsnapshot for backups.

    • KaldoOP
      link
      fedilink
      28 months ago

      I’m not sure what Ansible does that a simple Docker Compose doesn’t yet but I will look into it more!

      My real backup test run will be soon I think - for now I’m moving from windows to docker, but eventually I want to get an older laptop, put linux on it and just move everything to the docker on it instead and pretend it’s a server. The less “critical” stuff I have on my main PC, the less I’m going to cry when I inevitably have to reinstall the OS or replace the drives.

      • rentar42
        link
        fedilink
        2
        edit-2
        8 months ago

        I just use Ansible to prepare the OS, set up a dedicated user, install/setup Rootless Docker and then Sync all the docker compose files from the same repo to the appropriate server and launch/update as necessary. I also use it to centrally administer any cron jobs like for backup.

        Basically if I didn’t forget anything (which is always possible) I should be able to pick a brand new RPi with an SSD and replace one of mine with a single command.

        It also allows me to keep my entire setup “documented” and configured in a single git repository.

    • @[email protected]
      link
      fedilink
      English
      28 months ago

      While rsync is great, I recovered partially from an outtage… Containers with databases need special care: dumping there database…

      Lesson learned !