- 新增 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,忽略本地模型权重、构建产物、缓存和日志。
97 lines
2.1 KiB
Markdown
97 lines
2.1 KiB
Markdown
# 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 数据。
|