Install
openclaw skills install openclaw-docker-linuxRun OpenClaw inside Docker on Linux with Tailscale remote access. ⚠️ Involves sudo, Docker, Tailscale, and credential mounting — review security section before use. Complete setup guide covering installation, configuration, and critical gotchas. Trigger phrases: docker openclaw, openclaw in docker, setup openclaw docker, tailscale openclaw, docker-compose openclaw.
openclaw skills install openclaw-docker-linuxThis skill involves elevated privileges and credential management. Review before running:
references/docker-setup.sh before executing.~/.config/gh or other credential directories into containers exposes them to the container image. Only do this if you fully trust the image source.references/docker-config.md).ghcr.io/openclaw/openclaw:v1.2.3) instead of :latest for reproducible builds. The latest tag can change between container restarts.Run OpenClaw inside Docker on Linux (Ubuntu 24.04+) with Tailscale for remote access.
Install Docker via APT (not Snap):
sudo apt install docker.io docker-compose && \
sudo usermod -aG docker $USER
Then log out and back in — sudo usermod doesn't take effect with newgrp.
Run onboard to configure gateway and get your token:
docker-compose run --rm openclaw-cli onboard
Create docker-compose.yml using the token from onboard.
See references/docker-config.md for the full template and .env setup.
Start the container:
docker-compose up -d
Access at http://localhost:18789?token=YOUR_TOKEN
lan = accessible from the host via port mapping; loopback = locked inside container.~/.openclaw/ → Container /home/node/.openclaw/ (same files, different paths).sudo usermod -aG docker requires full logout/login, not newgrp.Generate a secure token:
openssl rand -hex 32
View container logs:
docker-compose logs -f openclaw
Run CLI commands inside container:
docker-compose run --rm openclaw-cli COMMAND_HERE
Fix volume permissions (Linux):
sudo chown -R 1000:1000 ~/.openclaw ~/openclaw
Approve Telegram pairing:
docker-compose run --rm openclaw-cli pairing approve telegram YOUR_CODE
Access via Tailscale (recommended — HTTPS):
sudo apt install tailscale
sudo tailscale up
./docker-setup.sh tailscale # Starts tailscale serve on port 18789
Then visit https://YOUR_MACHINE_NAME.YOUR_TAILNET.ts.net?token=YOUR_TOKEN from any device on your tailnet. Use MagicDNS hostname over raw IP — it's HTTPS by default and more stable.
references/docker-config.md — docker-compose.yml, .env template, permissions, Tailscale, management scriptreferences/quickstart.md — Simple 5-minute setup guidereferences/docker-setup.sh — Management script (start/stop/logs/doctor/tailscale/approve_telegram)references/gotchas.md — Critical mistakes and how to avoid themreferences/troubleshooting.md — Common errors and fixes