www_site/infra
2026-09-10 00:31:22 +08:00
..
caddy fix: restore Next basePath with Caddy passthrough 2026-09-10 00:31:22 +08:00
scripts chore: add CMS backup script and status 2026-09-09 20:05:03 +08:00
systemd feat: add Payload CMS foundation 2026-09-09 17:02:46 +08:00
README.md feat: add Payload CMS foundation 2026-09-09 17:02:46 +08:00

Phase 2 基础设施

本目录只保存不含秘密的部署模板:

  • caddy/Caddyfile:测试机 IP 的内部 CA HTTPS、Web/API 反向代理。
  • systemd/kaotings-api.serviceFastAPI 自动重启服务。
  • systemd/kaotings-web.serviceNext.js 自动重启服务。
  • systemd/kaotings-cms.servicePayload CMS 独立内容服务。
  • Phase 2 发布包必须保留仓库目录结构Web 使用发布根目录API 使用其中的 services/api,虚拟环境单独放在 /home/flym/kaotings-api-venv

数据库账号密码、CSRF_SECRET 和 Caddy 私有 CA 不进入 Git。服务器上的 /etc/kaotings/api.env 必须由 root 拥有且权限为 0600

Phase 2 测试入口:

  • HTTPShttps://192.168.199.22/
  • API通过同源 https://192.168.199.22/api/v1/*
  • API 回环端口:127.0.0.1:8000,不对局域网开放
  • Web 回环端口:127.0.0.1:3000,不对局域网开放
  • CMS 回环端口:127.0.0.1:3001,通过 https://192.168.199.22/cms/ 受控访问
  • PostgreSQL127.0.0.1:5432,不对局域网开放

CMS 使用独立 PostgreSQL 数据库和账号 /etc/kaotings/cms.env,不读取业务 API 用户表。CMS 管理员首个账户通过 Payload 管理入口受控建立,之后关闭匿名创建;不与业务用户表共享。

Caddy tls internal 生成的根证书需要在测试浏览器/设备中导入后HTTPS 才会显示为受信任。根证书可以从服务器的 Caddy 数据目录受控导出;私钥不得导出或提交。