我的声明式多机 homelab
作者用 NixOS + 自写工具 compose-farm + Docker Compose + Traefik 反向代理,在一套四机 homelab 上以全声明式方式管理约 140 个容器,服务 7 人日常使用。 核心思路:NixOS 声明机器、每个项目用上游官方 Compose 文件声明应用,compose-farm 决定哪个服务跑在哪台机器;所有配置进 git,改动可审计、可回滚,便于 AI 协作。 网络入口分四条路径——局域网、WireGuard、自建 Headscale 的 Tailscale、公网,统一由 Traefik + 单一 IP 白名单做访问控制,DNS 根据来源返回不同解析结果。 作者详细解释了 NixOS 的 comin GitOps 部署、Incus 系统容器隔离 Docker、Let's Encrypt 证书、DNS 分答案、Headscale ACL 等,并强调“声明式但机器尽量少”的平衡,代价是无自动故障转移,但迁移服务只需改一行配置并重新部署。 适合想认真搭可复现 homelab 的科技读者深挖借鉴。