Docker backup system

Hi all,
about a year ago i opened this thread:

https://www.reddit.com/r/selfhosted/comments/1r1vsc4/docker_backups/

After not finding an adequate solution, i decided to pick up the glove and build a backup system myself.

The core design decision: API-based exports per service, not blind DB/volume dumps. Each worker talks to the service's own REST/GraphQL API (or its official CLI, like Vaultwarden for example) — never the underlying database directly.
No DB credentials anywhere, no docker.sock mounted, no docker exec into other containers.
It also means the backups are just JSON/Markdown you can actually open and read, not an opaque pg_dump you're hoping restores cleanly someday.

Runs on a schedule (daily at a configurable time, or every N hours) with configurable retention — defaults to keeping 30 days locally and the last 3 uploads on Google Drive, all editable from the GUI.

Currently supports:

- Vaultwarden (encrypted vault export via the bw CLI)

- Wiki.js

- Snipe-IT

- Bar Assistant

- KitchenOwl

- Linkwarden

- n8n

- Karakeep

- Spoolman

- Immich (metadata only — albums/people/tags/EXIF, not the media files themselves)

- Nginx Proxy Manager

- AdGuard Home

  • Optional upload to Google Drive after each successful run.
  • The system does not restore from backup

Repo: https://github.com/alws34/DockerBackups

Setup instructions for each service are linked from the README so it doesn't turn into a wall of text.

please feel free to open a PR with your suggestions, or file issues/requests for services you want supported.

* All code written with the help of AI.

reddit.com
u/alws3344 — 14 days ago

Pi 5 + Hailo for Immich - PCIe compatibility sanity check

I’ve been running a Pi 5 as my main home server for about a year: 16GB RAM, Ubuntu Server, Pironman 5 Max, NVMe boot, currently using about 11/15.6GB RAM.
Now I want to add Immich, but offload its photo/face ML from the CPU using a bare M.2 Hailo accelerator in the Pironman’s second M.2 slot.
After way too much research, here’s where I landed:

**Hailo-8/8L vs Hailo-10H**
Hailo-8L: 13 TOPS, cheap and low power, but surprisingly hard to buy as a bare M.2 card.
Hailo-8: 26 TOPS, around $200-220, readily available, and already has a solid open-source Immich ML worker.
Hailo-10H: 40 TOPS, 8GB onboard RAM, around $260. It can also run local LLMs through Hailo’s Ollama/OpenAI-compatible server, which makes it very tempting.

**The PCIe problem**
The Pi 5 only has one native PCIe interface. The Pironman gets two M.2 slots using ASM1182e PCIe switches, so the boot NVMe and Hailo card would share the same Gen2 x1 link.
More concerning: there’s an unresolved Pi firmware issue where NVMe boot can fail when a non-storage PCIe device is connected behind the same switch. I’m going to test the setup with a spare device before buying anything.
The AI HAT/HAT+2 options are out because they consume the Pi’s PCIe connector, which conflicts with my NVMe setup. So I’m specifically looking at bare M.2 cards.

**Why I’m hesitant about Hailo-10H**
The only confirmed Pi 5 setup I’ve found required kernel 6.18.34, an unmerged driver PR, and HailoRT 5.3.0. My Ubuntu 24.04 server is still on kernel 6.8, and I don’t really want to turn a stable home server into a kernel experiment.
Also, the existing Immich Hailo worker’s models are compiled for Hailo-8. Using them on 10H appears to require recompiling the models with Hailo’s Dataflow Compiler, calibration datasets, etc.
And I’m already at 11/15.6GB RAM before adding Immich, Postgres/pgvector, Redis, and the ML worker.
So I’m leaning toward the boring/reliable Hailo-8, but the 10H’s local-LLM capability keeps tempting me.

Has anyone actually run a Hailo-8 or 10H alongside a boot NVMe behind a PCIe switch on a Pi 5? I’m especially interested in real-world FPS, RAM usage, PCIe bottlenecks, and whether NVMe boot remained reliable.

reddit.com
u/alws3344 — 2 months ago
▲ 3 r/rasberrypi+2 crossposts

Pi 5 + Hailo for Immich - PCIe compatibility sanity check

I’ve been running a Pi 5 as my main home server for about a year: 16GB RAM, Ubuntu Server, Pironman 5 Max, NVMe boot, currently using about 11/15.6GB RAM.
Now I want to add Immich, but offload its photo/face ML from the CPU using a bare M.2 Hailo accelerator in the Pironman’s second M.2 slot.
After way too much research, here’s where I landed:

Hailo-8/8L vs Hailo-10H
Hailo-8L: 13 TOPS, cheap and low power, but surprisingly hard to buy as a bare M.2 card.
Hailo-8: 26 TOPS, around $200-220, readily available, and already has a solid open-source Immich ML worker.
Hailo-10H: 40 TOPS, 8GB onboard RAM, around $260. It can also run local LLMs through Hailo’s Ollama/OpenAI-compatible server, which makes it very tempting.

The PCIe problem
The Pi 5 only has one native PCIe interface. The Pironman gets two M.2 slots using ASM1182e PCIe switches, so the boot NVMe and Hailo card would share the same Gen2 x1 link.
More concerning: there’s an unresolved Pi firmware issue where NVMe boot can fail when a non-storage PCIe device is connected behind the same switch. I’m going to test the setup with a spare device before buying anything.
The AI HAT/HAT+2 options are out because they consume the Pi’s PCIe connector, which conflicts with my NVMe setup. So I’m specifically looking at bare M.2 cards.

Why I’m hesitant about Hailo-10H
The only confirmed Pi 5 setup I’ve found required kernel 6.18.34, an unmerged driver PR, and HailoRT 5.3.0. My Ubuntu 24.04 server is still on kernel 6.8, and I don’t really want to turn a stable home server into a kernel experiment.
Also, the existing Immich Hailo worker’s models are compiled for Hailo-8. Using them on 10H appears to require recompiling the models with Hailo’s Dataflow Compiler, calibration datasets, etc.
And I’m already at 11/15.6GB RAM before adding Immich, Postgres/pgvector, Redis, and the ML worker.
So I’m leaning toward the boring/reliable Hailo-8, but the 10H’s local-LLM capability keeps tempting me.

Has anyone actually run a Hailo-8 or 10H alongside a boot NVMe behind a PCIe switch on a Pi 5? I’m especially interested in real-world FPS, RAM usage, PCIe bottlenecks, and whether NVMe boot remained reliable.

reddit.com
u/alws3344 — 2 months ago