feat(deploy): 画布 Agent - 独立 yingce-agent 容器并修复运行中断

生产会话不再因 stdout 管道提前关闭被误判失败。设置 YINGCE_AGENT_URL 后只走独立容器,失败不回退到内嵌进程。
This commit is contained in:
ddcat666
2026-09-29 21:41:36 +08:00
parent 3fb363aad2
commit cb146d27a1
25 changed files with 821 additions and 101 deletions

View File

@@ -38,6 +38,20 @@ services:
postgres:
condition: service_healthy
yingce-agent:
image: ${CANVAS_YINGCE_AGENT_IMAGE:?请先配置 CANVAS_YINGCE_AGENT_IMAGE(必须包含镜像 digest)}
environment:
YINGCE_AGENT_TOKEN: ${YINGCE_AGENT_TOKEN:?请先配置 YINGCE_AGENT_TOKEN}
MAX_CONCURRENT_SESSIONS: ${YINGCE_AGENT_MAX_SESSIONS:-8}
NODE_MAX_OLD_SPACE_SIZE: ${YINGCE_AGENT_NODE_MEMORY_MB:-512}
healthcheck:
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:8081/healthz"]
interval: 10s
timeout: 3s
retries: 10
start_period: 10s
restart: unless-stopped
backend:
image: ${CANVAS_BACKEND_IMAGE:?请先配置 CANVAS_BACKEND_IMAGE(必须包含镜像 digest)}
environment:
@@ -57,6 +71,9 @@ services:
CANVAS_PUBLIC_BASE_URL: ${CANVAS_PUBLIC_BASE_URL:-}
CANVAS_UPDATER_SOCKET: /run/open-ai-canvas-updater/updater.sock
CANVAS_UPDATER_TOKEN: ${CANVAS_UPDATER_TOKEN:-}
YINGCE_AGENT_URL: http://yingce-agent:8081
YINGCE_AGENT_TOKEN: ${YINGCE_AGENT_TOKEN:?请先配置 YINGCE_AGENT_TOKEN}
YINGCE_AGENT_BRIDGE_HOST: backend
GIN_MODE: release
volumes:
- ${CANVAS_DATA_PATH:-backend-data}:/data
@@ -68,6 +85,8 @@ services:
condition: service_healthy
migrate:
condition: service_completed_successfully
yingce-agent:
condition: service_healthy
restart: unless-stopped
stop_grace_period: ${CANVAS_SHUTDOWN_TIMEOUT:-10m}