When the gateway runs inside a Docker container and creates sandbox containers, volume mount paths need to be host paths, not container paths. Changes: - Add remapPathForDinD() function to remap container paths to host paths - Add CLAWDBOT_SANDBOX_HOST_CONFIG_DIR and CLAWDBOT_SANDBOX_HOST_WORKSPACE_DIR environment variables to docker-compose.yml - Use path remapping in both sandbox container and browser sandbox creation - Add Docker CLI to gateway Dockerfile for Docker-in-Docker support The path remapping is a no-op when the environment variables are not set, so bare metal installations are unaffected. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
51 lines
1.6 KiB
YAML
51 lines
1.6 KiB
YAML
services:
|
|
moltbot-gateway:
|
|
image: ${CLAWDBOT_IMAGE:-moltbot:local}
|
|
user: root
|
|
environment:
|
|
HOME: /home/node
|
|
TERM: xterm-256color
|
|
CLAWDBOT_GATEWAY_TOKEN: ${CLAWDBOT_GATEWAY_TOKEN}
|
|
CLAUDE_AI_SESSION_KEY: ${CLAUDE_AI_SESSION_KEY}
|
|
CLAUDE_WEB_SESSION_KEY: ${CLAUDE_WEB_SESSION_KEY}
|
|
CLAUDE_WEB_COOKIE: ${CLAUDE_WEB_COOKIE}
|
|
# Docker-in-Docker: host paths for sandbox container volume mounts
|
|
CLAWDBOT_SANDBOX_HOST_CONFIG_DIR: ${CLAWDBOT_CONFIG_DIR}
|
|
CLAWDBOT_SANDBOX_HOST_WORKSPACE_DIR: ${CLAWDBOT_WORKSPACE_DIR}
|
|
volumes:
|
|
- ${CLAWDBOT_CONFIG_DIR}:/home/node/.clawdbot
|
|
- ${CLAWDBOT_WORKSPACE_DIR}:/home/node/clawd
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
ports:
|
|
- "${CLAWDBOT_GATEWAY_PORT:-18789}:18789"
|
|
- "${CLAWDBOT_BRIDGE_PORT:-18790}:18790"
|
|
init: true
|
|
restart: unless-stopped
|
|
command:
|
|
[
|
|
"node",
|
|
"dist/index.js",
|
|
"gateway",
|
|
"--bind",
|
|
"${CLAWDBOT_GATEWAY_BIND:-lan}",
|
|
"--port",
|
|
"${CLAWDBOT_GATEWAY_PORT:-18789}"
|
|
]
|
|
|
|
moltbot-cli:
|
|
image: ${CLAWDBOT_IMAGE:-moltbot:local}
|
|
environment:
|
|
HOME: /home/node
|
|
TERM: xterm-256color
|
|
BROWSER: echo
|
|
CLAUDE_AI_SESSION_KEY: ${CLAUDE_AI_SESSION_KEY}
|
|
CLAUDE_WEB_SESSION_KEY: ${CLAUDE_WEB_SESSION_KEY}
|
|
CLAUDE_WEB_COOKIE: ${CLAUDE_WEB_COOKIE}
|
|
volumes:
|
|
- ${CLAWDBOT_CONFIG_DIR}:/home/node/.clawdbot
|
|
- ${CLAWDBOT_WORKSPACE_DIR}:/home/node/clawd
|
|
stdin_open: true
|
|
tty: true
|
|
init: true
|
|
entrypoint: ["node", "dist/index.js"]
|