Files
docker-compose-cookbooks/openclaw_dev/README.md
T

82 lines
2.9 KiB
Markdown

# OpenClaw
## Overview
OpenClaw is an open-source AI coding assistant gateway with multi-model
support, agent sandboxing, and extensible plugin system.
## Project Details
- **Project Repository:** [github.com/openclaw/openclaw](https://github.com/openclaw/openclaw)
- **Container Image:** [ghcr.io/openclaw/openclaw](https://github.com/openclaw/openclaw/pkgs/container/openclaw)
- **Documentation:** [docs.openclaw.ai](https://docs.openclaw.ai)
- **Reverse Proxy Port:** `18789`
## Getting Started
1. Copy `sample.env` and set `OPENCLAW_GATEWAY_TOKEN` (`openssl rand -hex 32`)
2. Start the container: `docker compose up -d`
3. Open http://localhost:18789 in your browser and sign in with the gateway token
## Environment Variable Notes
- `OPENCLAW_GATEWAY_TOKEN` — required shared secret for Control UI access.
Generate with `openssl rand -hex 32`.
- `OPENCLAW_GATEWAY_BIND``lan` (default, reachable from host) or `loopback`.
- `OPENCLAW_DISABLE_BONJOUR` — set to `1` (default) for Docker bridge;
`0` only on host/macvlan networks.
- `OTEL_EXPORTER_OTLP_ENDPOINT` — optional OpenTelemetry collector URL.
## Volume Notes
- `/home/node/.openclaw` — config, state, and installed plugins
- `/home/node/.openclaw/workspace` — agent workspace files
- `/home/node/.config/openclaw` — auth-profile secret encryption keys
All three use `${VOL_PATH:-/data}/openclaw/` as the host base path.
## Network Notes
Requires proxy network
## Docker Run
```bash
docker run -d \
--name=openclaw \
-e TZ=America/Vancouver \
-e OPENCLAW_DISABLE_BONJOUR=1 \
-e OPENCLAW_GATEWAY_TOKEN=change-me-to-a-random-secret \
-p 18789:18789 \
-v /data/openclaw/config:/home/node/.openclaw \
-v /data/openclaw/workspace:/home/node/.openclaw/workspace \
-v /data/openclaw/auth-secrets:/home/node/.config/openclaw \
-v /etc/localtime:/etc/localtime:ro \
--add-host host.docker.internal:host-gateway \
ghcr.io/openclaw/openclaw:latest \
node dist/index.js gateway --bind lan --port 18789
```
## Additional Notes / Gotchas
- This is a `_dev` stack — experimental, not yet production-ready.
- The container runs as `node` (uid 1000). Ensure host bind-mount
directories are owned by uid 1000 or set `user: "0:0"`.
- Host-side AI providers (Ollama, LM Studio) are reachable at
`http://host.docker.internal:<port>`.
- CLI commands: `docker compose exec openclaw node dist/index.js <subcommand>`
- No `healthcheck` block in the compose file — healthchecks are a future
feature across this repo (see AGENTS.md). The image's built-in
`HEALTHCHECK` still applies.
## Dockhand Stack, Deploy from Git
- Cookbooks Repository
- stackname: openclaw_dev
- Compose file path: openclaw_dev/compose.yaml
- Additional env file (optional): openclaw_dev/sample.env
Then "Load" openclaw_dev/sample.env into the Environment variables in dockhand.
Create the Stack