feat: initialize serverAppConfigs with podman stacks for Dankserver and Dankclaw

- Dankserver stack: RomM, Copyparty, Calibre-Web, node-exporter
- Dankclaw stack: Gluetun VPN (SearXNG tunnel), SearXNG+Valkey, ComfyUI
  (CPU backend), OpenWebUI, Hermes, Gitea+Postgres (migrated), Caddy
  reverse proxy, Grafana+Prometheus+Loki+Alloy observability
- Caddyfiles with .local hostname convention and basicauth homepage
- bind-mount storage policy, no named volumes
- deploy.sh mirroring vllmScripts git workflow (push -> pull -> restart -> health)
- docs/ Obsidian vault: per-service docs from frank-default-small research
  subagents (promtail EOL -> Alloy; gitea SECRET_KEY preservation; ComfyUI --cpu)
- bats test suite at 6 seams — 22 tests green
This commit is contained in:
Frank committed 2026-08-13 20:19:41 -07:00
commit e3eb5334cb
57 files changed
+3033

No files matched your search

+38
View File
@@ -0,0 +1,38 @@
# Backblaze Integration
Off-site backup plan for the bind-mounted data on both hosts. **Deferred**: research only, not implemented yet.
## Goal
Back up critical data to Backblaze B2:
- Calibre library (Dankserver)
- ComfyUI models (Dankclaw)
- Gitea data, repos, DB (Dankclaw)
- Homepage/stack configs (this repo — already versioned in git)
## Approach (research direction)
| Option | Fit |
|--------|-----|
| `restic` + B2 | Best fit: dedupe, encryption, snapshots, low cost. Single static binary, works with podman host. |
| `borg` + borgbase | Alternative; borgbase is more expensive per TB than B2. |
| rclone + B2 | Good for file sync, no snapshot/dedupe semantics. |
| podman volume driver for B2 | Niche, immature. Not recommended. |
## Shape of the Implementation (future)
- `scripts/backup.sh` on each host, run by systemd timer or cron.
- `restic -r b2:bucket:path backup /opt/...`
- `RESTIC_PASSWORD` in the host `.env`, never in the repo.
- Restore procedure documented once the backup job exists.
## Next Steps
1. Create a B2 bucket + application key.
2. Draft `scripts/backup.sh` and a systemd timer unit.
3. Run a test restore.
## See Also
- [[Storage Policy]] — what gets backed up
- [[Gitea]] — the existing backup procedure (tar / pg_dump)