Files
Pre_Seg_Server/doc/02-deployment.md
admin b5413066a0 添加Docker自包含部署分支
- 新增 Seg_Server_Docker 自包含部署内容,包含前后端、FastAPI、Celery、PostgreSQL、Redis、MinIO、演示视频和 DICOM 数据。

- 保留 demo 数据以支持恢复演示出厂设置,排除 SAM 2.1 .pt 权重并在 README 中补充下载命令。

- 补充 GPU 部署、backend/worker 镜像复用、frpc/frps + NPM 公网域名反代部署说明。

- 在 .env/.env.example 中用 # XXXX 标注局域网和公网域名部署需要修改的配置项。

- 添加部署分支 .gitignore,忽略本地模型权重、构建产物、缓存和日志。
2026-05-07 19:06:07 +08:00

97 lines
2.1 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.
# 02 部署步骤
## 前置条件
- Docker Engine 24+
- Docker Compose v2+
- Linux 主机建议至少 4 核 CPU、8 GB 内存;启用 SAM2/GPU 时按模型权重另行评估。
## 本机部署
```bash
cd /home/wkmgc/Desktop/Seg_Server_Docker
cp .env.example .env
docker compose up -d --build
```
验证:
```bash
curl http://localhost:8000/health
docker compose ps
```
## 局域网部署
1. 获取服务器 IP例如 `192.168.3.11`
2. 修改 `.env`
```env
PUBLIC_HOST=192.168.3.11
CORS_ORIGINS=["http://192.168.3.11:3000","http://localhost:3000","http://127.0.0.1:3000"]
```
3. 重新创建后端和 worker
```bash
docker compose up -d --build backend worker frontend
```
4. 访问:
```text
http://192.168.3.11:3000
```
需要放行端口:`3000``8000``9000`、可选 `9001`
## 演示出厂设置数据
恢复演示出厂设置会检查:
```text
demo/演视LC视频序列.mp4
demo/演视DICOM序列/*.dcm
```
部署包当前已经包含这些演示文件。如需替换为其它演示数据,可按相同命名覆盖:
```bash
mkdir -p demo/演视DICOM序列
cp /path/to/video.mp4 demo/演视LC视频序列.mp4
cp /path/to/dicom-series/*.dcm demo/演视DICOM序列/
docker compose restart backend worker
```
## SAM2 / GPU 扩展
最小镜像没有安装 PyTorch 和 SAM2因此 AI 推理会显示不可用,但普通项目、模板、手工标注、上传、拆帧、导出仍可运行。
启用 SAM2 的一种方式:
1. 基于 `Dockerfile.backend` 创建 GPU 版 Dockerfile。
2. 安装与你 CUDA 匹配的 PyTorch 和 `sam2`
3. 将权重放入 `models/`,例如:
```text
models/sam2.1_hiera_tiny.pt
```
4. 在 compose 中为 `backend``worker` 增加 GPU runtime/device 配置。
5. 保持 `.env` / compose 中:
```env
SAM_MODEL_PATH=/app/models/sam2.1_hiera_tiny.pt
SAM_MODEL_CONFIG=configs/sam2.1/sam2.1_hiera_t.yaml
```
## 更新部署包
从源码仓库更新后,重新构建:
```bash
docker compose up -d --build
```
数据库 schema 会由后端启动时执行 `create_all` 和兼容列检查。重要生产环境仍建议先备份数据库和 MinIO 数据。