feat(deploy): 支持更新脚本自动部署模型转换服务

This commit is contained in:
2026-10-03 02:17:47 +08:00
parent 4e4c4c9f23
commit be3ba8838a
11 changed files with 308 additions and 16 deletions
+55
View File
@@ -144,6 +144,9 @@ services:
- SYSTEM_UPDATE_SERVICE_URL=${SYSTEM_UPDATE_SERVICE_URL:-http://easyai-updater:3015}
- SYSTEM_UPDATE_INTERNAL_TOKEN=${SYSTEM_UPDATE_INTERNAL_TOKEN}
- EASYAI_DEPLOYMENT_SCHEMA_VERSION=${EASYAI_DEPLOYMENT_SCHEMA_VERSION:-1}
# 独立转换 Worker 与 API 共用内部令牌,由安装/升级脚本自动生成。
- MODEL_CONVERSION_WORKER_TOKEN=${MODEL_CONVERSION_WORKER_TOKEN}
- MODEL_CONVERSION_HUNYUAN_ENABLED=${MODEL_CONVERSION_HUNYUAN_ENABLED:-false}
# 日志大小设置,避免日志文件过大
env_file:
- .env
@@ -158,6 +161,58 @@ services:
options:
max-size: "100m"
max-file: "10"
model-conversion-worker:
container_name: easyai-model-conversion-worker
image: registry.cn-shanghai.aliyuncs.com/easyaigc/model-conversion-worker:${MODEL_CONVERSION_WORKER_VERSION:-latest}
labels:
- "com.centurylinklabs.watchtower.enable=${WATCHTOWER_CORE_UPDATE_ENABLED:-true}"
restart: unless-stopped
cpus: 2
mem_limit: 4g
memswap_limit: 4g
pids_limit: 64
read_only: true
cap_drop:
- ALL
security_opt:
- no-new-privileges:true
tmpfs:
- /tmp:size=2g,uid=1000,gid=1000,mode=0700
stop_grace_period: 10s
networks:
- easyai
depends_on:
easyai-server:
condition: service_healthy
redis:
condition: service_healthy
mongo:
condition: service_started
# 只提供转换所需连接,不向解析器或 Worker 注入整个 .env。
environment:
- MODEL_CONVERSION_MONGO_URI=mongodb://mongo:27017
- MODEL_CONVERSION_MONGO_DB=${CONFIG_DB_MONGO_DBNAME:-aidraw}
- MODEL_CONVERSION_MONGO_USERNAME=${MONGO_INITDB_ROOT_USERNAME}
- MODEL_CONVERSION_MONGO_PASSWORD=${MONGO_INITDB_ROOT_PASSWORD}
- MODEL_CONVERSION_MONGO_AUTH_SOURCE=admin
- MODEL_CONVERSION_REDIS_HOST=redis
- MODEL_CONVERSION_REDIS_PORT=6379
- MODEL_CONVERSION_REDIS_USERNAME=${CONFIG_COMFYUI_QUENE_REDIS_USERNAME:-}
- MODEL_CONVERSION_REDIS_PASSWORD=${CONFIG_COMFYUI_QUENE_REDIS_PASSWORD:-}
- MODEL_CONVERSION_REDIS_DB=${CONFIG_COMFYUI_QUENE_REDIS_DB:-6}
- MODEL_CONVERSION_API_URL=http://easyai-server:3001
- MODEL_CONVERSION_WORKER_TOKEN=${MODEL_CONVERSION_WORKER_TOKEN}
healthcheck:
test: ["CMD", "node", "src/healthcheck.mjs"]
interval: 10s
timeout: 5s
retries: 3
start_period: 20s
logging:
driver: "json-file"
options:
max-size: "50m"
max-file: "3"
ws-gateway:
container_name: easyai-wsgateway # websocket网关
# 阿里云镜像地址