Files
REVOXELSEG_DICOM/Docker部署/README.md

136 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ReVoxelSeg DICOM Docker 部署说明
本目录提供两套 Docker Compose 部署方式:
- `本机/docker_compose.yaml`:适合当前开发机或普通 Linux 主机。
- `威联通NAS/docker_compose.yaml`:适合 QNAP QTS Container Station使用 `/share/Container/revoxelseg_dicom` 绝对路径。
两套 Compose 都包含:
- `revoxelseg_web`ReVoxelSeg DICOM 前后端一体服务,容器端口 `4000`
- `revoxelseg_frpc`FRPC 客户端,将 `revoxelseg_web:4000` 映射到 `82.157.255.195` 的远程端口 `10008`
当前 Docker 构建会同步包含以下能力:
- 二维逆向分割映射按实体填充显示,导出的分割 Label Map 也按填充区域写入。
- 模型位姿支持以模型中心沿 X/Y/Z 轴镜像翻转,保存、项目库预览和导出均沿用该位姿。
- “构件分别导出”会把所有构件 NIfTI 文件集中到导出包内的 `segmentation-parts/` 目录。
- 项目库 DICOM 首页支持滚轮缩放、拖拽平移和位置重置。
- 项目库与工作区的 DICOM 切片编号按医学影像顺序显示,滑条使用非进度条样式。
## 一、本机部署
在项目根目录执行:
```bash
docker compose -f Docker部署/本机/docker_compose.yaml up -d --build
```
查看状态:
```bash
docker compose -f Docker部署/本机/docker_compose.yaml ps
docker compose -f Docker部署/本机/docker_compose.yaml logs -f revoxelseg_web
docker compose -f Docker部署/本机/docker_compose.yaml logs -f revoxelseg_frpc
```
访问地址:
```text
http://192.168.3.11:4000/
http://127.0.0.1:4000/
```
公网访问需等待 FRPC 在线,并确认 NPM 反向代理已将 `revoxel.huijutec.cn` 转发到 FRP 服务端 `10008`
```text
https://revoxel.huijutec.cn/
```
停止:
```bash
docker compose -f Docker部署/本机/docker_compose.yaml down
```
## 二、威联通 NAS / QTS Container Station 部署
建议把完整项目放到:
```text
/share/Container/revoxelseg_dicom
```
然后在 QTS Container Station 中创建应用,选择或粘贴:
```text
/share/Container/revoxelseg_dicom/Docker部署/威联通NAS/docker_compose.yaml
```
也可通过 SSH 执行:
```bash
cd /share/Container/revoxelseg_dicom
docker compose -f Docker部署/威联通NAS/docker_compose.yaml up -d --build
```
如果项目目录不是 `/share/Container/revoxelseg_dicom`,需要同步修改 NAS Compose 中:
- `build.context`
- `/share/Container/revoxelseg_dicom/data`
- `/share/Container/revoxelseg_dicom/exports`
## 三、数据持久化
容器内路径:
- `/app/WebSite/data`:项目状态、上传数据和导入缓存。
- `/app/WebSite/exports`:导出的 NII/NII.GZ/TAR.GZ 文件。
本机部署会挂载到:
- `Docker部署/本机/data`
- `Docker部署/本机/exports`
NAS 部署会挂载到:
- `/share/Container/revoxelseg_dicom/data`
- `/share/Container/revoxelseg_dicom/exports`
默认演示数据 `Head_CT_DICOM/``Head_CT_ReConstruct/` 会复制进镜像,用于新环境首次启动后的默认项目。
## 四、FRPC 映射
Compose 中内置的 FRPC 配置为:
```toml
serverAddr = "82.157.255.195"
serverPort = 7000
auth.method = "token"
auth.token = "en.xjtu.edu.cn"
transport.poolCount = 5
transport.heartbeatTimeout = -1
[[proxies]]
name = "ReVoxelSeg_DICOM"
type = "tcp"
localIP = "revoxelseg_web"
localPort = 4000
remotePort = 10008
```
如果远端端口或代理名称调整,只需修改两份 `docker_compose.yaml``revoxelseg_frpc` 的内嵌配置。
## 五、旧 tmux 部署回退
若需要临时回退到旧部署方式:
```bash
docker compose -f Docker部署/本机/docker_compose.yaml down
cd WebSite
npm run build
npm run serve -- --host 0.0.0.0 --port 4000
```