git clone https://cnb.cool/fuliai/openclaw_desktop_docker
cd openclaw_desktop_docker
docker compose up -d
启动后打开浏览器:
http://localhost:3000 或 https://<你的IP>:3001
.env 文件。.env 中查看并修改登录密码。/config。/config/workspace。/workspace 是一个兼容用软链接,指向 /config/workspace。/config/workspace 和 /workspace 同时存在是正常的,不是两份数据。/config 下的内容会在重启、更新镜像后继续保留。/workspace。/workspace 实际链接到 /config/workspace,所以工作结果仍然会持久化到 /config 中。/config/workspace。openclaw@2026.3.24。@tencent-weixin/openclaw-weixin-cli@2.0.1@tencent-weixin/openclaw-weixin@2.0.1compose.yaml 默认拉取的是已发布镜像 docker.cnb.cool/fuliai/openclaw_desktop_docker/openclaw-desktop:latest。docker compose up -d 使用预构建镜像,最终版本以你实际拉到的镜像内容为准。openclaw --version
OPENCLAW_NPM_SPEC 和 WEIXIN_PLUGIN_VERSION,但建议优先保持当前默认组合,避免插件兼容性问题。当镜像有更新时,在项目目录执行:
docker compose pull docker compose up -d
更新不影响原有的保存在 /config 目录下的文件。只有在这个目录内的内容才能持久化!
如需清理无用旧镜像,可执行:
docker image prune -f
@tencent-weixin/openclaw-weixin-cli 和 @tencent-weixin/openclaw-weixin。/usr/lib/node_modules/@tencent-weixin/openclaw-weixin 执行 openclaw plugins install -l,不是依赖远程再次拉取插件包。openclaw-weixin 写入 OpenClaw 的插件配置并启用,方便首次启动后直接扫码登录。微信扫码登录。openclaw channels login --channel openclaw-weixin
/config/.openclaw 中。如需确认当前容器里的 OpenClaw 版本和微信 channel 插件是否已经正常加载,请使用:
openclaw --version openclaw plugins list
openclaw-weixin 处于 loaded 即表示微信 channel 插件已经被 OpenClaw 成功加载。/config 数据升级上来的,建议再检查一下插件配置:openclaw config get plugins.allow openclaw config get plugins.entries.openclaw-weixin.enabled
openclaw-weixin 为 loaded,可在容器内执行下面命令重新安装并重载:openclaw plugins install -l /usr/lib/node_modules/@tencent-weixin/openclaw-weixin
openclaw config set plugins.allow '["openclaw-weixin"]'
openclaw config set plugins.entries.openclaw-weixin.enabled true
openclaw gateway restart
openclaw plugins list
openclaw gateway status 里出现 unauthorized: gateway token mismatch,通常不是 gateway 没启动,而是 CLI 与 gateway 使用了不同 token。gateway.auth.token 和 gateway.remote.token 同步成同一个值。/config 数据,或者手动改过配置,可以在容器内执行下面命令重新对齐:echo "$OPENCLAW_GATEWAY_TOKEN"
openclaw config get gateway.auth.token
openclaw config get gateway.remote.token
NEW_TOKEN="${OPENCLAW_GATEWAY_TOKEN:-$(openssl rand -hex 24)}"
openclaw config set gateway.auth.token "$NEW_TOKEN"
openclaw config set gateway.remote.token "$NEW_TOKEN"
openclaw gateway restart
openclaw gateway status
OPENCLAW_GATEWAY_TOKEN,它应与上面两个配置值保持一致。compose.yaml 里写了 security_opt: - no-new-privileges:false 之后,必须重建容器,这个改动才会真正作用到运行中的容器。docker compose down docker compose up -d
docker inspect openclaw-webtop --format '{{json .HostConfig.SecurityOpt}}'
["no-new-privileges:false"] 后,再进容器里测试:sudo -i