diff --git a/.env.sample b/.env.sample index 6fcae2c..9502abb 100644 --- a/.env.sample +++ b/.env.sample @@ -144,7 +144,19 @@ WS_GATEWAY_TCP_EVENT_PATTERN=gateway.event.publish # 发布超时时间(毫秒);超时只记录 ERROR,不中断主进程 WS_GATEWAY_TCP_TIMEOUT_MS=1500 -# ========== 12. WS 会话鉴权(MCP 风格,可选) ========== +# ========== 12. ws-gateway 转发客户端命令到 easyai-server(TCP) ========== +# 拖动画布、协作 presence 等客户端命令由 ws-gateway 转发到 easyai-server 处理 +GATEWAY_INBOUND_ENABLED=true +# easyai-server 监听地址;容器内应监听 0.0.0.0,供 ws-gateway 访问 +GATEWAY_INBOUND_TCP_LISTEN_HOST=0.0.0.0 +# ws-gateway 访问 easyai-server 的 TCP 地址;Docker 部署必须使用服务名,不能用 127.0.0.1 +GATEWAY_INBOUND_TCP_HOST=easyai-server +# ws-gateway 到 easyai-server 的命令入口端口,对应主服务 HTTP 端口 3001 +GATEWAY_INBOUND_TCP_PORT=4001 +GATEWAY_INBOUND_TCP_PATTERN=gateway.inbound.command +GATEWAY_INBOUND_TIMEOUT_MS=5000 + +# ========== 13. WS 会话鉴权(MCP 风格,可选) ========== # true=客户端必须鉴权后才能建立可用会话;false=允许匿名会话 WS_AUTH_REQUIRED=false # 鉴权阶段超时时间(毫秒) @@ -156,13 +168,13 @@ WS_AUTH_BEARER_TOKENS= # ws_ticket 票据列表(逗号分隔,适合短时授权) WS_AUTH_WS_TICKETS= -# ========== 13. 静态资源 CDN(可选) ========== +# ========== 14. 静态资源 CDN(可选) ========== NUXT_APP_CDN_URL= -# ========== 14. 版本 ========== +# ========== 15. 版本 ========== VERSION=latest -# ========== 15. OSS 配置(可选,PDF 解析图片上传) ========== +# ========== 16. OSS 配置(可选,PDF 解析图片上传) ========== # 可填写 .env.tools 或在此覆盖 # OSS_ENDPOINT= # OSS_ACCESS_KEY_ID= diff --git a/docker-compose.yml b/docker-compose.yml index d2337b9..c44de56 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -98,12 +98,16 @@ services: - CONFIG_MQ_PORT=${CONFIG_MQ_PORT} - CONFIG_MQ_VHOST=${CONFIG_MQ_VHOST} # 视频编辑接口 - - CONFIG_VIDEO_EDIT_API_URL=http://video-edit:8000 + - CONFIG_VIDEO_EDIT_API_URL=${CONFIG_VIDEO_EDIT_API_URL:-http://video-edit:8000} # 沙箱环境baseURL - SANDBOX_SERVICE_BASE_URL=${SANDBOX_SERVICE_BASE_URL:-http://sandbox:8000} # 服务治理 TCP 连接 - ASG_TCP_HOST=easyai-asg - ASG_TCP_PORT=4003 + # ws-gateway 转发客户端命令到 easyai-server(画布协作等),对应主服务 3001 + - GATEWAY_INBOUND_ENABLED=${GATEWAY_INBOUND_ENABLED:-true} + - GATEWAY_INBOUND_TCP_LISTEN_HOST=${GATEWAY_INBOUND_TCP_LISTEN_HOST:-0.0.0.0} + - GATEWAY_INBOUND_TCP_PORT=${GATEWAY_INBOUND_TCP_PORT:-4001} # Agent 记忆服务 TCP 连接(来自 .env) - MEMORY_TCP_HOST=${MEMORY_TCP_HOST:-agent-memory} - MEMORY_TCP_PORT=${MEMORY_TCP_PORT:-4004} @@ -136,6 +140,7 @@ services: networks: - easyai depends_on: + - easyai-server - redis - rabbitmq volumes: @@ -154,6 +159,12 @@ services: - CONFIG_MQ_PASSWORD=${CONFIG_MQ_PASSWORD} - CONFIG_MQ_HOST=rabbitmq - CONFIG_MQ_PORT=${CONFIG_MQ_PORT} + # 客户端命令转发到 easyai-server 入站 TCP;容器内不能使用 127.0.0.1 + - GATEWAY_INBOUND_ENABLED=${GATEWAY_INBOUND_ENABLED:-true} + - GATEWAY_INBOUND_TCP_HOST=${GATEWAY_INBOUND_TCP_HOST:-easyai-server} + - GATEWAY_INBOUND_TCP_PORT=${GATEWAY_INBOUND_TCP_PORT:-4001} + - GATEWAY_INBOUND_TCP_PATTERN=${GATEWAY_INBOUND_TCP_PATTERN:-gateway.inbound.command} + - GATEWAY_INBOUND_TIMEOUT_MS=${GATEWAY_INBOUND_TIMEOUT_MS:-5000} # 日志大小设置,避免日志文件过大 env_file: - .env @@ -499,5 +510,3 @@ networks: config: - subnet: 172.21.0.0/16 gateway: 172.21.0.1 - -