2026-05-21-10-38-49 新增Docker部署与FRPC映射
This commit is contained in:
128
Docker部署/README.md
Normal file
128
Docker部署/README.md
Normal file
@@ -0,0 +1,128 @@
|
||||
# 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`。
|
||||
|
||||
## 一、本机部署
|
||||
|
||||
在项目根目录执行:
|
||||
|
||||
```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
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user