fix: keep remote restore containers running

This commit is contained in:
2026-05-22 07:24:43 +08:00
parent af045e3b3e
commit ca17e1f09d
3 changed files with 54 additions and 1 deletions
@@ -4416,3 +4416,36 @@
- 后续建议:
- 先恢复或重新部署 `192.168.3.90` 上的 ai-contract 后端、前端和 worker 容器,再补当天远程冒烟。
- 若继续开发,建议从增强项中选择:条款推荐行为漏斗、通用质量评测域、专业交付增强、全量法规向量化、真实支付、电子签章或小程序。
## 2026-05-22 远程测试服务器 ai-contract 容器恢复与自启动策略修复
- 问题现象:
- `192.168.3.90:22` 可连。
- `192.168.3.90:8001`、`192.168.3.90:3003` 初始不可连。
- 只读检查显示 `ai-contract-backend-restore`、`ai-contract-frontend`、`ai-contract-legal-change-worker` 均为退出状态,`gitea` 仍运行。
- 根因判断:
- 三个 ai-contract 容器的 Docker restart policy 均为 `restart=no`。
- `ai-contract-frontend` 和 `ai-contract-legal-change-worker` 退出时间与服务器/Docker 服务恢复时间接近,属于容器没有自动拉起。
- `ai-contract-backend-restore` 日志显示应用此前正常启动并服务过,`oom=false`,不是业务代码启动失败。
- 已执行恢复:
- 对三个容器执行 `docker update --restart unless-stopped`。
- 启动 `ai-contract-backend-restore`、`ai-contract-frontend`、`ai-contract-legal-change-worker`。
- 已修复部署脚本:
- `scripts/deploy-ai-contract-restore-docker.ps1`
- 后端、前端、法规影响 worker 的 `docker run -d` 均已补 `--restart unless-stopped`。
- 以后使用该脚本重建容器时,不会再恢复成 `restart=no`。
- 验证结果:
- `ai-contract-backend-restore restart=unless-stopped status=running`
- `ai-contract-frontend restart=unless-stopped status=running`
- `ai-contract-legal-change-worker restart=unless-stopped status=running`
- `http://192.168.3.90:8001/health` 返回 HTTP 200,`status=ok`。
- `http://192.168.3.90:8001/api/v1/system/readiness` 返回 HTTP 200,`status=ready`。
- `http://192.168.3.90:3003/documents/new` 返回 HTTP 200。
- `http://192.168.3.90:3003/documents/contract-123/edit` 返回 HTTP 200。
- `http://192.168.3.90:3003/quality-evals` 返回 HTTP 200。
- `http://192.168.3.90:3003/legal-change-impacts` 返回 HTTP 200。
- `http://192.168.3.90:3003/operation-kpis` 返回 HTTP 200。
- 当前结论:
- 3.90 服务器本身没有故障。
- 这次问题已经从“手动恢复”提升到“部署脚本后续重建也保留自启动策略”。
- 2026-05-22 远程 HTTP 冒烟已补齐。
@@ -158,6 +158,24 @@ Generating static pages (40/40)
若后续要恢复远程验证,应先重启或重新部署 `ai-contract` 后端、前端和 worker 容器,再复跑 `/health`、`/documents/new`、`/documents/[id]/edit`、`/quality-evals`、`/legal-change-impacts` 等路由烟测。
### 7.1 同日修复记录
后续已确认服务器本身没有故障,问题来自三个 ai-contract 容器的 Docker restart policy 为 `restart=no`。已执行以下修复:
- 对 `ai-contract-backend-restore`、`ai-contract-frontend`、`ai-contract-legal-change-worker` 执行 `docker update --restart unless-stopped`。
- 启动三个容器,当前均为 `status=running`。
- 修复 `scripts/deploy-ai-contract-restore-docker.ps1`,使后续通过该脚本重建容器时也自动带 `--restart unless-stopped`。
- 重新验证远程 HTTP:
- `http://192.168.3.90:8001/health`:HTTP 200。
- `http://192.168.3.90:8001/api/v1/system/readiness`:HTTP 200。
- `http://192.168.3.90:3003/documents/new`:HTTP 200。
- `http://192.168.3.90:3003/documents/contract-123/edit`:HTTP 200。
- `http://192.168.3.90:3003/quality-evals`:HTTP 200。
- `http://192.168.3.90:3003/legal-change-impacts`:HTTP 200。
- `http://192.168.3.90:3003/operation-kpis`:HTTP 200。
因此,2026-05-22 的远程 HTTP 冒烟已在同日补齐。
## 八、最终结论
《AI合同起草与审查助手-法律文书能力吸收开发方案-2026-05-20.md》与当前代码整体对齐。
@@ -166,4 +184,3 @@ Generating static pages (40/40)
1. 先恢复 `192.168.3.90` 应用容器,补当天远程冒烟。
2. 再按业务价值选择增强项:条款推荐行为漏斗、通用质量评测域、专业交付增强、全量法规向量化、真实支付、电子签章或小程序。