Appearance
构建与部署
文档站(VitePress)
- 本地开发:
npm installnpm run docs:dev
- 生产构建:
npm run docs:build
注意:构建产物(如 .vitepress/cache、dist)应加入 .gitignore。
后端(FastAPI + Uvicorn)
启动命令
bash
# 开发模式(自动重载)
uvicorn unet_dt.api.main:app --reload --host 0.0.0.0 --port 8000
# 生产模式
uvicorn unet_dt.api.main:app --host 0.0.0.0 --port 8000 --workers 1注意:由于 ExecutionWorker 使用线程内状态,生产环境建议
--workers 1。
环境变量
| 变量 | 默认值 | 说明 |
|---|---|---|
UNET_DT_DB_URL | sqlite+pysqlite:///./unet_dt.db | 完整数据库连接串 |
UNET_DT_DB_HOST | — | MySQL 主机(与 USER/PASSWORD/NAME 组合使用) |
UNET_DT_DB_PORT | 3306 | MySQL 端口 |
UNET_DT_DB_USER | — | MySQL 用户名 |
UNET_DT_DB_PASSWORD | — | MySQL 密码 |
UNET_DT_DB_NAME | — | MySQL 数据库名 |
UNET_DT_DB_CHARSET | utf8mb4 | MySQL 字符集 |
UNET_DT_DB_ECHO | false | 是否打印 SQL |
UNET_DT_DB_POOL_PRE_PING | true | 连接池预检 |
UNET_DT_DB_AUTO_CREATE | true | 自动建表 + 补列 |
UNET_DT_DB_POOL_SIZE | 10 | 连接池大小 |
UNET_DT_DB_MAX_OVERFLOW | 20 | 连接池溢出上限 |
UNET_DT_DB_POOL_RECYCLE | 3600 | 连接回收时间(秒) |
UNET_DT_UNET_HOST | 127.0.0.1 | UNET 默认网关主机 |
UNET_DT_UNET_PORT | 1100 | UNET 默认网关端口 |
UNET_DT_UNET_NODE_ENDPOINTS_JSON | {} | 节点端点 JSON 映射 |
UNET_DT_UNET_NODE_{A..G}_ENDPOINT | — | 单节点端点配置 |
UNET_DT_LOCATION_INIT_ENABLED | false | 是否启用位置初始化 |
UNET_DT_LOCATION_INIT_MODE | fail_fast | 初始化模式 |
UNET_DT_LOCATION_INIT_SCRIPT | scripts/unet_test_location.py | 初始化脚本路径 |
UNET_DT_LOCATION_INIT_TIMEOUT_SECONDS | 20.0 | 初始化超时 |
UNET_DT_LOG_LEVEL | INFO | 日志级别 |
UNET_DT_LOG_FILE | logs/unet_dt.log | 日志文件路径 |
前端(React SPA)
开发模式
bash
cd src/unet_dt/ui
npm install
npm run devVite 开发服务器默认监听 http://localhost:5173,通过 proxy 将 /api 请求转发至后端:
typescript
// vite.config.ts
proxy: {
"/api/ws": { target: "ws://localhost:8000", ws: true, rewrite: ... },
"/api": { target: "http://localhost:8000", rewrite: ... },
}可通过 VITE_API_PORT 环境变量修改后端端口。
生产构建
bash
cd src/unet_dt/ui
npm run build # tsc -b && vite build构建产物输出至 dist/ 目录,可由 Nginx 等静态服务器托管。
UNET
- 本机进程或容器(通过网关 fjagepy 或日志 arlpy/logonly 接入)
- 网关模式需要各节点的 TCP 端口可达