3.7 KiB
3.7 KiB
生产部署记录(2026-09-12)
发布
- 发布提交:
49a916b(首页菜单增加"主页"入口;全站按钮改为透明底 + hover 动态背景,按钮内文字前加品牌 logo 小图标components/brand-icon.tsx;CMS 中文化标签、i18n(en/zh)、自定义退出按钮/cms/api/cms-logout)。 - 发布目录:
/home/flym/releases/49a916b-www(www,服务器构建)、/home/flym/releases/cms-49a916b(CMS,服务器构建)。 - 软链:
kaotings-www→releases/49a916b-www、kaotings-cms→releases/cms-49a916b、kaotings-api→releases/ad87a71/services/api(未变更,未重启)。 - 数据库迁移:无(CMS 改动仅为标签/i18n/组件,无字段结构变化)。
过程
- 本地提交
49a916b并推送 origin(57c854a..49a916b)。 git archive打包 www 全量与apps/cms,scp 上传(kaotings_deploy密钥)。- 服务器
cp -a上一发布后解包覆盖;关键文件 SHA256 与本地一致(lib/content.ts、brand-icon.tsx、payload.config.ts)。 - 服务器构建:www(
NODE_ENV=production CMS_PUBLIC_API_URL=http://127.0.0.1:3001/cms npm run build)与 CMS(npm run build)均成功。 - CMS 产物完整性:
.next/node_modules经符号链接实文件 319 个(pino 207),符合"服务器构建"要求,无 09-11 的 Windows 构建空目录问题。 - 切换顺序:先 CMS(重启
kaotings-cms,验证 200)→ 再 www(重启kaotings-web)。软链属主为 flym,切换本身无需 sudo;仅systemctl restart使用 sudo。
回滚
- www 回滚:
kaotings-www→releases/ad87a71-www+systemctl restart kaotings-web。 - CMS 回滚:
kaotings-cms→releases/cms-ad87a71-c+systemctl restart kaotings-cms。 - 无迁移,回滚无数据兼容问题。
验收
systemctl is-active:kaotings-api / kaotings-cms / kaotings-web 均 active。GET /healthz(127.0.0.1:8000 与 https://www.kaotings.com):ok / 200。- www 首页(本地 3000 与外部 https 一致):主导航含"主页"(→
/);登录/联系我们为统一透明底按钮(hover 出背景);页面/_next/image图标 18 处(含按钮 logo 与品牌标);/icon.png200。 - CMS:
/cms/admin200;/cms/api/products?where[status][equals]=published200(www 产品列表依赖正常)。 - 管理端中文标签/i18n 与退出按钮:代码已上线,登录态界面待人工目视确认。
当日追加发布(均为仅 www 或 www+API,同法操作)
| 提交 | 内容 | 发布目录 |
|---|---|---|
a06b5f4 |
所有按钮 hover 统一为登录按钮的青色亮底,去除橙色 | releases/a06b5f4-www |
d296b7a |
页头登录态感知(我的页面/退出登录);修复 lib/admin.ts 请求丢失 Content-Type 导致删除用户 422 |
releases/d296b7a-www |
af5b4af |
退出登录后统一跳首页(页头与账户中心) | releases/af5b4af-www |
86fc51e |
管理后台 TTS 配置(迁移 007_tts_settings.sql,DB 优先于 env;GET/PUT /admin/tts/settings + POST /admin/tts/settings/test 探测;worker 动态读配置,兼容 mp3) |
releases/86fc51e(www + API 同目录) |
86fc51e已应用迁移(schema_migrations 001–007 齐全);/api/v1/admin/tts/settings未登录 401;三服务 active;外部首页 200。- 当前软链:
kaotings-www→releases/86fc51e、kaotings-api→releases/86fc51e/services/api、kaotings-cms→releases/cms-49a916b。 - 待办:管理员在后台“TTS 配置”页填入上游地址与 API Key(探测通过后保存),解决生产
UPSTREAM_NOT_CONFIGURED;上游凭据仍建议只走后台配置,不写入 api.env。