cbcb6f02a5785479dd9b4c482fd9f76af9faa9a5
ops
Infrastructure-as-code repo for reproducible VPS edge + homelab deployment.
Layout
bootstrap/host bootstrap scriptsedge/caddy/VPS edge reverse proxy stackstacks/app stack modulesbackups/backup + restore scriptssecrets/encrypted secret placeholders and guidancedocs/architecture and restore runbooks
Quick Start
- Fill
secrets/*.agewith encrypted values. - Update domain/IP placeholders in
edge/caddy/Caddyfile. - Copy
.env.examplefiles to.envper stack. - Run bootstrap scripts on target hosts.
Ops Repo Source Strategy
When the ops repo lives on self-hosted Gitea, bootstrap should not depend on one source.
- Primary source: self-hosted Gitea URL (
OPS_REPO_PRIMARY_URL) - Optional mirror source: secondary git host (
OPS_REPO_FALLBACK_URL) - Last-resort source: local bundle file (
OPS_BUNDLE_PATH, default/srv/backups/ops/latest/ops.bundle)
The bootstrap scripts automatically try those in that order.
Current default primary URL is https://git.sketchferret.com/sketchferret/ops.git.
Retention Policy
- Keep all backup files for 7 days (daily recovery points).
- From day 8 to day 365, keep one backup per ISO week per folder.
- Keep files under any
latest/folder (for bootstrap fallback pointers).
Description
Languages
Shell
100%