3.0 KiB
3.0 KiB
数字分身测试环境部署 + 修复概览(2026-07-17)
本次动作:把上一轮改动真正发到测试环境
测试环境:geo-server(192.168.1.188) 上 /root/avatar-test,docker-compose 跑
avatar-backend(:8011) + avatar-frontend(:8099)。
访问地址:http://192.168.1.188:8099/(短信登录页:/#/login/sms)
已上线内容(上一轮你质疑的"创建覆盖/删除/去掉会会资料/真实短信"相关代码):
AvatarManage.vue:去掉"我的会会资料",改为全部分身列表,每张带删除+二次确认store/avatar.ts:新增removeAvatarbackend/routers/avatars.py:删除级联清理(知识库/切片/问答对/授权)backend/routers/huihui_auth.py:真实生产调用优先,DEV_MOCK仅兜底
端到端验证(已通过)
| 项 | 结果 |
|---|---|
| 后端 health | ✅ |
分身列表 GET /api/avatar |
✅ 返回已 seed 分身 |
| 短信发码(开发态) | ✅ 回显 devCode |
短信登录→/me |
✅ 落库 dev 用户 + 会话 |
| 删除级联 | ✅ 创建→删除→GET 404 |
前端页面 :8099 |
✅ 稳定 Up,<title>会会数字分身</title> |
部署中踩的两个坑(已修复,记进项目记忆)
- 环境变量被 rsync 覆盖:本机 compose 不含 env,把远端原
HUIHUI_DEV_MOCK/EMBEDDING_*丢了。 修复:从运行容器docker inspect导出 4 个变量到远端.env,compose 改用env_file引用;.env加进.dockerignore;本机同步加env_file+.gitignore防再丢。 - 前端容器反复 Restarting:nginx 1.31.3 写 pid 文件被测试服务器 Docker 的 seccomp 拦截
pwrite致命退出(老版 nginx 用write()且只告警,故之前 46h 正常)。 修复:前端Dockerfile锁定nginx:1.28-alpine(远端已缓存,无需联网);nginx.conf改为完整主配置覆盖/etc/nginx/nginx.conf。
关于"参考会会接口文档"(真实短信仍待你提供)
- 仓库
docs/production-interface-inventory.md只文档化了/open/login/token(密码登录),没有短信端点。 - 已实现的真实生产调用:短信登录复用文档化的
/open/login/token,仅loginType/grantType=sms(与会会开放平台一致范式);发送验证码端点走可配置HUIHUI_SMS_SEND_PATH(默认/open/login/sms/send在生产返回 404)。 - 仍阻塞:会会真实短信发送端点路径(如
/open/sms/send等)+ 开放平台凭证(appId/accessId/accessSecret/clientCode)未到位。你提供后,关掉HUIHUI_DEV_MOCK、写进 compose env、重建后端即可真接通会会生产库并同步用户资料。
改动文件
digital-avatar-app/Dockerfile(锁 nginx 1.28-alpine)digital-avatar-app/nginx.conf(完整主配置,覆盖默认 nginx.conf)digital-avatar-app/docker-compose.yml(backend 加env_file: - .env)digital-avatar-app/.gitignore、digital-avatar-app/backend/.dockerignore(忽略.env)