我开始尝试让 Codex 管理自己的服务器
把服务器配置留在 Git,用 Ansible 重复部署,并为高风险操作保留人工决策。
我开始尝试用 Codex 管理这台个人服务器。SSH 仍然很好用,调查故障时尤其直接;但如果长期配置只靠一次次终端操作,过一段时间就很难说清楚哪些步骤必须重做、哪一步曾经改过什么。所以这次我把能重复的部分放进 Git。
让仓库解释服务器
现在仓库保存 Ansible 配置、Caddy 模板、静态站内容和操作说明。服务器上的 Caddy、Docker 与站点文件由 Ansible 配置。一次正常改动的顺序是:先检查现状和 Git diff,再用 Ansible check/diff 看服务器将发生什么变化,应用后从公网验证,最后记录结果并提交代码。
这并不意味着所有东西都该自动化。域名记录和云安全组仍在仓库外;SSH 私钥、证书私钥和应用数据也不进 Git。对于这些边界,文档要写清楚,而不是假装 playbook 能恢复一切。
Codex Auto 和人工边界
我把这个仓库当作长期运维项目。Codex Auto 帮我维护当前重点和待解决的问题,也促使每次变更留下真实验证结果。比如“HTTPS 已可用”不能只凭配置文件判断,还要看权威 DNS、公网证书、普通客户端请求和 Caddy 日志。
常规的页面、配置和文档调整可以连续完成;会切断 SSH、删除数据、改 DNS 或增加明显成本的操作,则应该停下来由人决定。这样的人工边界让我敢把低风险的重复工作交给工具,同时保留对关键动作的控制。
目前到哪一步
第一版共享基础已经能运行静态站和公网 HTTPS,Ansible 可以重复执行,临时的本机回环应用模式也验证过。它只是一个可工作的起点。真正部署有持久数据的项目之前,还需要为数据确定备份位置、保留期,并做恢复验证。
我想继续沿用这种节奏:每次只增加实际需要的能力,让 Git 和服务器之间尽量少漂移,也让未来的自己看得懂。