最近折腾 OpenClaw(开源大模型交互平台)时,发现虽然 Docker 容器显示运行正常,但网页端却连不上。如果你也遇到了类似情况,别慌,这通常是权限配置问题,解决起来并不难。
报错现象
当你打开 OpenClaw 网页界面(通常是 http://127.0.0.1:18789)时,可能会遇到以下两种情况:
- 情况一:找不到设置入口
刚进入界面时,可能是一片空白或者找不到登录框,右上角提示unauthorized: gateway token missing。 - 情况二:配对失败(Pairing Required)
好不容易找到了输入框填入了 Token,结果页面中间出现红色的pairing required报错,网关状态一直显示"离线"。
避坑指南与解决方案
针对上述问题,我总结了一套完整的排查和解决流程,请按顺序操作。
第一步:获取你的"钥匙"(Token)
OpenClaw 的安全机制要求必须使用 Token 才能连接。首先,你需要从正在运行的 Docker 容器中把这个 Token 提取出来。
打开你的 PowerShell 或终端,输入以下命令:
bash
docker exec openclaw cat /home/node/.openclaw/openclaw.json
执行后,你会看到一段 JSON 代码。找到 "token": "..." 这一行,复制引号里面的那一长串字符。这就是你的"钥匙"。
第二步:在网页端填入 Token
回到浏览器页面:
- 点击左侧菜单栏最底部的 "设置" 分组,选择 "概览"。
- 在页面左上角的 "网关令牌" 输入框中,粘贴刚才复制的 Token。
- 点击旁边的 "连接" 或 "刷新" 按钮。
第三步:解决 Pairing Required(关键步骤)
如果你填完 Token 后,页面依然显示红色的 pairing required,或者右侧状态栏显示"离线",这说明网页端虽然有了钥匙,但网关(Docker 容器)还没同意让它进门。
我们需要在命令行中手动批准这次连接:
-
查看待批准的请求
在 PowerShell 中运行以下命令,查看当前有哪些设备请求连接:
docker exec openclaw openclaw devices list你会看到一行状态为
pending的请求,记下它的REQUEST ID。 -
批准连接
使用以下命令批准刚才看到的请求(将
<REQUEST_ID>替换为实际的 ID):docker exec openclaw openclaw devices approve <REQUEST_ID>
第四步:见证奇迹
回到浏览器页面,再次点击 "连接" 按钮。此时,红色的报错应该消失,右侧的网关状态会变成绿色的 "在线"。
总结
OpenClaw 的部署其实并不复杂,核心难点在于理解它的双重验证机制:既要填对 Token,又要在后端手动批准配对。只要按上述步骤操作,就能顺利解决网页打不开或连接失败的问题。
祝大家部署顺利,玩得开心!