# 汽车零部件智能报价 — 两个 MCP 服务 + 鉴权管理后台 编排 # 生产环境:docker compose up -d # 默认连生产库 192.168.1.206:5432,对外 192.168.1.119:8001/8002/8000 # 8000 = mcp-auth-admin 管理后台(FastAPI + React) # 开发环境:本机直接 python server.py(不入容器) # source .env.dev 后到 mcp-for-{erp,crm}/src 执行 python server.py # 连开发库 47.101.220.40:5432,对外 localhost:8001/8002/8000 # 也可用 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} # 鉴权库(mcp_auth),DbTokenVerifier 查 mcp_token 表校验 - MCP_AUTH_DB_HOST=${MCP_AUTH_DB_HOST:-192.168.1.206} - MCP_AUTH_DB_PORT=${MCP_AUTH_DB_PORT:-5432} - MCP_AUTH_DB_USER=${MCP_AUTH_DB_USER:-postgres} - MCP_AUTH_DB_PASSWORD=${MCP_AUTH_DB_PASSWORD:-digiwin} - MCP_AUTH_DB_NAME=${MCP_AUTH_DB_NAME:-mcp_auth} - MCP_AUTH_SERVICE=erp 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} # 鉴权库(mcp_auth),DbTokenVerifier 查 mcp_token 表校验 - MCP_AUTH_DB_HOST=${MCP_AUTH_DB_HOST:-192.168.1.206} - MCP_AUTH_DB_PORT=${MCP_AUTH_DB_PORT:-5432} - MCP_AUTH_DB_USER=${MCP_AUTH_DB_USER:-postgres} - MCP_AUTH_DB_PASSWORD=${MCP_AUTH_DB_PASSWORD:-digiwin} - MCP_AUTH_DB_NAME=${MCP_AUTH_DB_NAME:-mcp_auth} - MCP_AUTH_SERVICE=crm restart: unless-stopped # MCP Auth Admin — Bearer Token 动态鉴权管理后台(FastAPI + React) mcp-auth-admin: build: context: ./mcp-auth dockerfile: Dockerfile image: mcp-auth-admin:latest container_name: mcp-auth-admin network_mode: host environment: - AUTH_DB_HOST=${AUTH_DB_HOST:-192.168.1.206} - AUTH_DB_PORT=${AUTH_DB_PORT:-5432} - AUTH_DB_USER=${AUTH_DB_USER:-postgres} - AUTH_DB_PASSWORD=${AUTH_DB_PASSWORD:-digiwin} - AUTH_DB_NAME=${AUTH_DB_NAME:-mcp_auth} - JWT_SECRET=${JWT_SECRET:-change-me-in-prod} restart: unless-stopped