Files
REVOXELSEG_DICOM/工程分析/测试方案-2026-05-21-10-38-49.md

3.1 KiB
Raw Blame History

测试方案Docker 双环境部署与 FRPC 公网映射

测试方案文档路径:工程分析/测试方案-2026-05-21-10-38-49.md

静态检查

  • 检查 Dockerfile 路径、工作目录、复制路径和启动命令。
  • 使用 docker compose -f Docker部署/本机/docker_compose.yaml config 校验本机 Compose。
  • 使用 docker compose -f Docker部署/威联通NAS/docker_compose.yaml config 校验 NAS Compose。
  • 确认 frpc 配置包含:
    • serverAddr = "82.157.255.195"
    • serverPort = 7000
    • auth.token = "en.xjtu.edu.cn"
    • localIP = "revoxelseg_web"
    • localPort = 4000
    • remotePort = 10008

构建检查

  • WebSite/ 下执行 npm run lint
  • WebSite/ 下执行 npm run build
  • 使用本机 Compose 执行 Docker 镜像构建。

关键业务场景验证

  • 容器启动后访问 /api/health 返回 ok: true
  • 首页 / 返回 200 OK
  • 默认项目数据可由容器读取。
  • 本机端口 4000 可访问。

医学影像数据相关边界验证

  • 确认默认 DICOM 与 STL 目录被复制进镜像,运行态数据目录挂载不覆盖默认演示资产。
  • 确认 WebSite/dataWebSite/exports 被挂载为持久化目录,避免容器重建后用户项目和导出结果完全丢失。

部署验证

  • 停止旧 tmux 服务后,使用本机 Docker Compose 启动服务。
  • 验证 http://127.0.0.1:4000/api/health
  • 验证 http://127.0.0.1:4000/
  • 查看 revoxelseg_frpc 日志,确认 frpc 已执行并尝试连接服务端。

Git/Gitea 备份验证

  • 仅暂存本次 Docker 部署文件与工程分析文档。
  • Commit message 包含 2026-05-21-10-38-49 与简要描述。
  • 推送到 http://192.168.31.5:5002/admin/REVOXELSEG_DICOM.git

风险与回归关注点

  • Docker 镜像构建时间和体积受默认医学数据大小影响。
  • frpc 公网访问依赖远端 FRP 服务和 NPM 反向代理,若服务端不可用,本机健康检查仍应通过。
  • 容器运行后不要再同时启动 tmux 版 4000 服务,以免端口冲突。

实际执行结果

  • 已先停止旧 tmux 运行服务4000 端口空闲后再启动 Docker Compose。
  • npm run lint:通过。
  • npm run build:通过,仅保留 Vite chunk size 提示。
  • docker compose -f Docker部署/本机/docker_compose.yaml config通过frpc 远端端口为 10008
  • docker compose -f Docker部署/威联通NAS/docker_compose.yaml config通过NAS 版路径展开为 /share/Container/revoxelseg_dicom
  • docker compose -f Docker部署/本机/docker_compose.yaml up -d --build:通过。
  • revoxelseg_web:状态 healthy端口映射为 0.0.0.0:4000->4000/tcp
  • revoxelseg_frpc:日志显示 login to server success[ReVoxelSeg_DICOM] start proxy success
  • curl http://127.0.0.1:4000/api/health:返回 {"ok":true,"service":"revoxelseg-dicom"}
  • curl http://127.0.0.1:4000/:返回 200 OK
  • curl http://192.168.3.11:4000/:返回 200 OK
  • curl https://revoxel.huijutec.cn/:返回 200 OK,响应头包含 x-served-by: revoxel.huijutec.cn