# 汽车零部件智能报价 — 两个 MCP 服务编排 # 生产环境:docker compose up -d # 默认连生产库 192.168.1.206:5432,对外 192.168.1.119:8001/8002 # 开发环境:本机直接 python server.py(不入容器) # source .env.dev 后到 mcp-for-{erp,crm}/src 执行 python server.py # 连开发库 47.101.220.40:5432,对外 localhost:8001/8002 # 也可用 docker 跑开发:docker compose --env-file .env.dev up -d # 停止:docker compose down # 日志:docker compose logs -f # 网络模式 host:容器直接共享宿主网络栈,绕开 Docker 桥接 FORWARD 链, # 便于局域网其他机器直接访问(无需 ports 映射) services: mcp-for-erp: build: context: . dockerfile: Dockerfile args: SERVICE: mcp-for-erp image: mcp-for-erp:latest container_name: mcp-for-erp network_mode: host environment: - ERP_DB_HOST=${ERP_DB_HOST:-192.168.1.206} - ERP_DB_PORT=${ERP_DB_PORT:-5432} - ERP_DB_USER=${ERP_DB_USER:-postgres} - ERP_DB_PASSWORD=${ERP_DB_PASSWORD:-digiwin} - ERP_DB_NAME=${ERP_DB_NAME:-smart_quotation_auto} # 对外地址(用于 OAuth 资源元数据),按实际部署机 IP 调整 - MCP_PUBLIC_URL=${MCP_PUBLIC_URL_ERP:-http://192.168.1.119:8001} # Bearer Token 表:token:client_id 逗号分隔,每个客户端一个独立 token - MCP_AUTH_TOKENS=${MCP_AUTH_TOKENS_ERP:-erp-token-trae-2026:trae,erp-token-partner-a:partner-a} restart: unless-stopped mcp-for-crm: build: context: . dockerfile: Dockerfile args: SERVICE: mcp-for-crm image: mcp-for-crm:latest container_name: mcp-for-crm network_mode: host environment: - CRM_DB_HOST=${CRM_DB_HOST:-192.168.1.206} - CRM_DB_PORT=${CRM_DB_PORT:-5432} - CRM_DB_USER=${CRM_DB_USER:-postgres} - CRM_DB_PASSWORD=${CRM_DB_PASSWORD:-digiwin} - CRM_DB_NAME=${CRM_DB_NAME:-smart_quotation_auto} # 对外地址(用于 OAuth 资源元数据),按实际部署机 IP 调整 - MCP_PUBLIC_URL=${MCP_PUBLIC_URL_CRM:-http://192.168.1.119:8002} # Bearer Token 表:token:client_id 逗号分隔,每个客户端一个独立 token - MCP_AUTH_TOKENS=${MCP_AUTH_TOKENS_CRM:-crm-token-trae-2026:trae,crm-token-partner-a:partner-a} restart: unless-stopped