Create dataset: /mnt/nvme/Docker/openclaw
Create folders:
mkdir -p /mnt/nvme/Docker/openclaw/config mkdir -p /mnt/nvme/Docker/openclaw/workspace chown -R 1000:1000 /mnt/nvme/Docker/openclaw/ chmod 700 /mnt/nvme/Docker/openclaw/ chmod -R 700 /mnt/nvme/Docker/openclaw/config/ chmod 755 /mnt/nvme/Docker/openclaw/workspace/
Onboard OpenClaw: /mnt/nvme/Docker/openclaw
docker run --rm -it \ -v /mnt/nvme/Docker/openclaw/config:/home/node/.openclaw \ -v /mnt/nvme/Docker/openclaw/workspace:/home/node/.openclaw/workspace \ -e NPM_CONFIG_PREFIX=/home/node/.npm-global \ -e HOME=/home/node \ -e TERM=xterm-256color \ ghcr.io/openclaw/openclaw:latest \ node dist/index.js onboard 2>&1
When using the TrueNAS Application:
openclaw setup --wizard
docker exec -it ix-openclaw-openclaw-1 node /app/openclaw.mjs setup --wizard
Use the Gateway Token from the TrueNAS app settings:
docker exec -it ix-openclaw-openclaw-1 sh -c 'node /app/openclaw.mjs config set gateway.auth.token "$OPENCLAW_GATEWAY_TOKEN"' docker exec -it ix-openclaw-openclaw-1 sh -c 'node /app/openclaw.mjs config set gateway.remote.url ws://127.0.0.1:30262' docker exec -it ix-openclaw-openclaw-1 sh -c 'node /app/openclaw.mjs config set gateway.remote.token "$OPENCLAW_GATEWAY_TOKEN"' docker exec -it ix-openclaw-openclaw-1 sh -c 'node /app/openclaw.mjs config set gateway.mode remote'
Restart OpenClaw
docker restart ix-openclaw-openclaw-1
On https://truenas:30262/overview paste Gateway Token and Connect.
docker exec -it ix-openclaw-openclaw-gateway-1 sh -c 'node /app/openclaw.mjs devices list'
docker exec -it ix-openclaw-openclaw-gateway-1 sh -c 'node /app/openclaw.mjs devices approve Request-Number-Here'
openclaw doctor --fix
docker exec -it ix-openclaw-openclaw-gateway-1 sh -c 'node /app/openclaw.mjs doctor --fix'