services: openclaw-gateway: build: context: . dockerfile: ./Dockerfile image: openclaw-clawteam:latest deploy: resources: limits: cpus: '4' memory: 12G reservations: memory: 2G environment: HOME: /home/node TERM: xterm-256color NODE_OPTIONS: "--max-old-space-size=8192" OPENCLAW_GATEWAY_TOKEN: ${OPENCLAW_GATEWAY_TOKEN:-team-token} OPENCLAW_ALLOW_INSECURE_PRIVATE_WS: ${OPENCLAW_ALLOW_INSECURE_PRIVATE_WS:-} CLAUDE_AI_SESSION_KEY: ${CLAUDE_AI_SESSION_KEY:-} CLAUDE_WEB_SESSION_KEY: ${CLAUDE_WEB_SESSION_KEY:-} CLAUDE_WEB_COOKIE: ${CLAUDE_WEB_COOKIE:-} TZ: ${OPENCLAW_TZ:-UTC} volumes: - ${OPENCLAW_CONFIG_DIR:-./.openclaw}:/home/node/.openclaw - ${OPENCLAW_WORKSPACE_DIR:-./.openclaw/workspace}:/home/node/.openclaw/workspace ports: - "${OPENCLAW_GATEWAY_PORT:-18789}:18789" - "${OPENCLAW_BRIDGE_PORT:-18789}:18789" init: true restart: unless-stopped command: [ "openclaw", "gateway", "--bind", "${OPENCLAW_GATEWAY_BIND:-lan}", "--port", "18789", "--allow-unconfigured" ] healthcheck: test: [ "CMD", "node", "-e", "fetch('http://127.0.0.1:18789/healthz').then((r)=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))" ] interval: 30s timeout: 5s retries: 5 start_period: 20s openclaw-cli: build: context: . dockerfile: ./Dockerfile image: openclaw-clawteam:latest pull_policy: build network_mode: "service:openclaw-gateway" deploy: resources: limits: cpus: '2' memory: 4G cap_drop: - NET_RAW - NET_ADMIN security_opt: - no-new-privileges:true environment: HOME: /home/node TERM: xterm-256color NODE_OPTIONS: "--max-old-space-size=4096" OPENCLAW_GATEWAY_TOKEN: ${OPENCLAW_GATEWAY_TOKEN:-team-token} OPENCLAW_ALLOW_INSECURE_PRIVATE_WS: ${OPENCLAW_ALLOW_INSECURE_PRIVATE_WS:-} BROWSER: echo CLAUDE_AI_SESSION_KEY: ${CLAUDE_AI_SESSION_KEY:-} CLAUDE_WEB_SESSION_KEY: ${CLAUDE_WEB_SESSION_KEY:-} CLAUDE_WEB_COOKIE: ${CLAUDE_WEB_COOKIE:-} TZ: ${OPENCLAW_TZ:-UTC} volumes: - ${OPENCLAW_CONFIG_DIR:-./.openclaw}:/home/node/.openclaw - ${OPENCLAW_WORKSPACE_DIR:-./.openclaw/workspace}:/home/node/.openclaw/workspace stdin_open: true tty: true init: true entrypoint: ["/bin/bash", "-c"] command: ["tail -f /dev/null"] depends_on: - openclaw-gateway