- README: 补充 reset.sh 快速入口和脚本对比表 - runbook: 新增「容器重置」章节和「故障排查」(502/crash-loop/WebSocket/镜像未生效) - configuration: 修正端口表(im=11228/push=11229/update=11230/license=11231), 补充 SPRING_DATASOURCE_PASSWORD 设计说明,移除已废弃的 environment 密码块说明 - acceptance-checklist: 修正端口号,补充 WebSocket 多层透传说明,移除不存在的 11227 行 - deployment-defaults: 同步端口表,补充 reset.sh 和 WebSocket 注意事项 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2.0 KiB
2.0 KiB
验收清单
部署流程
install.sh可一键完成完整部署(含租户初始化)- 新建租户模式:账号可正常登录控制台
- 迁移租户模式:使用迁移密钥(
pmk_)完成导入,账号和应用数据完整 - 部署完成后输出端口表和 nginx 参考配置
基础服务
- tenant-service 健康:
curl http://127.0.0.1:11224/actuator/health返回 200 - 控制台前端可访问:
curl http://127.0.0.1:11226返回 HTML - 文件服务可访问:
curl http://127.0.0.1:11225/file/health返回正常 - 私有化模式确认:
/api/private/deployment/status返回"mode":"PRIVATE" - 注册入口关闭:
"tenantRegisterEnabled":false
可选服务
- im-service 健康:
curl http://127.0.0.1:11228/actuator/health返回 200 - update-service 健康:
curl http://127.0.0.1:11230/actuator/health返回 200 - license-service 健康:
curl http://127.0.0.1:11231/actuator/health返回 200 - push-service 已启动(厂商凭据按需填写)
中间件
- MySQL managed 模式:容器自动启动,数据目录
data/mysql/持久化 - Redis managed 模式:容器自动启动,AOF 持久化
- 重启容器后数据完整
License
- 所有应用在
app_licenses表有对应记录 /api/license/admin/apps/:appKey返回 200,不出现 404
Nginx 配置
- 宿主机 nginx 配置后,通过外部地址可访问控制台
/api/im/路由到 im-service(11228)/ws/imWebSocket 连接正常(需每层 nginx 透传Upgrade/Connection头)/api/v1/updates/路由到 update-service(11230),不被通用/api/拦截/api/license/路由到 license-service(11231),不被通用/api/拦截/file/支持大文件上传(500MB)
公有化隔离
- SDK 配置不包含公有化地址
dev.xuqinmin.com config/sdk/xuqm-private-sdk.json中所有 URL 指向私有部署地址- 私有化改造不影响公有化配置和部署链路