Files
serverAppConfigs/serverAppConfigs-docs/Research/Backblaze Integration.md
T
Frank 5829a0bfe8 docs: rename docs/ -> serverAppConfigs-docs/ per system-wide PROJECTNAME-docs convention
All in-repo path references (AGENTS.md, README, old scripts, report artifacts,
test code paths) rewritten in the same commit; focused-test map extended for
.gitignore, old/scripts/*, dankclaw/comfyui/*, and report/* per this repo's
own convention ('add one before committing'). Obsidian wikilinks are
title-based and unaffected.
2026-08-28 02:20:06 -07:00

1.2 KiB

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)