services: xingbang-app: build: context: . dockerfile: Dockerfile container_name: mini-openclaw-stable ports: - "3200:3000" # frontend - "8002:8002" # backend API used by the browser client environment: DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY:-} DEEPSEEK_MODEL: ${DEEPSEEK_MODEL:-deepseek-chat} DEEPSEEK_BASE_URL: ${DEEPSEEK_BASE_URL:-https://api.deepseek.com} CHAT_THINKING_MODE: ${CHAT_THINKING_MODE:-} ERP_DB_HOST: ${ERP_DB_HOST:-} ERP_DB_PORT: ${ERP_DB_PORT:-5432} ERP_DB_NAME: ${ERP_DB_NAME:-} ERP_DB_USER: ${ERP_DB_USER:-} ERP_DB_PASSWORD: ${ERP_DB_PASSWORD:-} ERP_DB_SSL_MODE: ${ERP_DB_SSL_MODE:-require} RISK_AGENT_BACKEND_URL: ${RISK_AGENT_BACKEND_URL:-http://127.0.0.1:8002} volumes: - xingbang-data:/app/backend/xingbang_data - xingbang-logs:/app/backend/logs restart: unless-stopped healthcheck: test: - CMD - node - -e - "Promise.all([fetch('http://127.0.0.1:3000/'), fetch('http://127.0.0.1:8002/')]).then(rs => process.exit(rs.every(r => r.ok) ? 0 : 1)).catch(() => process.exit(1))" interval: 30s timeout: 5s start_period: 120s retries: 3 volumes: xingbang-data: xingbang-logs: