单元六 域名与上线 · 第 26 课

结业:验收与收尾

走到这里,你已经亲手把一个想法变成了互联网上的网站。最后一课做三件事:验收、算账、收尾。

本课目标

  • 按清单从头到尾验收一遍。
  • 算清每个月要花多少钱。
  • 决定继续运行还是释放资源,并按清单完成。

验收清单

每一项都应该能做到。哪一项做不到,就回到对应的课复习。

和 AI 合作

  • 我能在终端里启动 Codex,用“目标、范围、规则、验收”写需求。(第 9 课)
  • 我会审查 AI 的计划,会用审批规矩判断要不要放行。(第 7、9 课)
  • 我会用 Git 存档、查看改动、恢复。(第 8 课)
  • 真实的 Key 没有进入源代码、Git 存档和镜像;存放 Key 的文件和备份只有自己能读。(第 6、13、19 课)

做一个服务

  • 周报助手能在本地运行,AI 不可用时会退回规则版。(第 12、13 课)

上云和上线

  • ssh ai-server 用密钥登录,密码登录已关闭。(第 15 课)
  • 我能用 Vim 修改服务器上的配置文件。(第 17 课)
  • 镜像在 Docker Hub 上,有多个版本标签。(第 20、25 课)
  • 服务由 Docker Compose 管理,重启后自动恢复。(第 21 课)
  • https://report.你的域名 有锁形图标,需要登录才能使用。(第 24 课)
  • 防火墙只开放 22、80、443。(第 14、24 课)
  • 我知道怎么发布新版本、怎么回滚,部署配置已经备份。(第 25 课)

算一算每月花费

项目计费方式你的金额
云主机按月
域名按年,除以 12
API 调用按套餐或用量
Docker Hub、Cloudflare本课程用到的功能免费0

把实际金额填进去。日后用量变大,再考虑换更便宜的模型、调低每日上限,或者升级配置。

继续运行

如果周报助手对你有用,就留着它。按第 25 课的维护表定期照看,并在日历上记下云主机和域名的到期日。

释放资源

如果不打算继续,请按顺序完成以下步骤,避免继续扣费,也避免留下安全隐患:

  1. 先备份想保留的东西:代码已经在你电脑的 Git 仓库里;需要的话,按第 25 课把部署配置复制回来。
  2. 停止服务:在服务器的 ~/apps/weekly-report 里运行 docker compose down。
  3. 释放云主机:在云服务商控制台退订或释放这台服务器。释放后数据无法恢复,确认第 1 步已经完成。
  4. 处理域名:在 Cloudflare 里删除 report 的解析记录;在注册商那里关闭域名的自动续费,或者留着以后用。
  5. 清理 Docker Hub:删除 weekly-report 仓库;在 Account settings → Personal access tokens 里删除 ai-server 这个令牌。如果学过扩展课,也删除 github-actions 令牌、GitHub 仓库里的 Secrets,以及 Cloudflare 里的隧道。
  6. 更换 API Key:你的 Key 曾经保存在服务器上。服务器释放后,建议在账户后台更换一个新 Key,并按第 6 课更新自己电脑上的环境变量。
  7. 删除本地备份:ai-course/backups 文件夹里有 Key 和证书私钥,不再需要就删掉。

下一步

  • 把 AI 用到工作里:整理资料、处理表格、写周报、批量改文件名。记得遵守公司关于数据和 AI 工具的规定,先在副本上操作。
  • 继续学扩展课:用 GitHub 自动构建发布、用 Cloudflare Tunnel 免开端口上线、让 AI 帮你运维服务器。
  • 深入了解工具:Codex 专题、Claude 专题、Grok 专题。
  • 做下一个小项目:团队午餐投票、个人导航页、记账小工具……流程和这门课完全一样:说清需求、让 AI 写、验收、存档、部署。

恭喜结业。