之前用 Docker 装 OpenClaw,最大的问题不是“能不能跑”,而是“权限不够用 + 排错不爽”。再加上 1Panel 更新后要先填 API(我这边没配好),索性直接宿主机直装(Debian / root),省事很多。
先说一句:这篇不是官方文档,我就是把我自己装的时候从头到尾走的流程写清楚,顺便解释下每一步“它在干嘛、为啥这么选”。
官网在这:https://openclaw.ai/

进去之后默认给的是 PowerShell 命令,我是 Debian,所以点一下 change 切到 Linux/macOS。
我不黑 Docker,Docker 很多场景真香。但 OpenClaw 这种“可能要读文件/跑动作/接工具”的东西,Docker 的隔离在某些时候会变成麻烦。
我自己的感受大概是:
- Docker:优点是干净、可回滚;缺点是权限/挂载/网络/系统服务这些细节一多,就开始反复横跳。
- 宿主机:优点是想干啥就干啥(尤其是排错),systemd 常驻也顺;缺点是你得自己把安全边界想清楚。
所以我最后选宿主机,原因很朴素:我就是想它先稳定跑起来。
- 系统:Debian(Ubuntu 也一样)
- 权限:root 直接装(单人 VPS,懒得建用户)
- 渠道:Telegram
- 默认网关:(只监听本机)
如果你是多用户机器/公司机,强烈建议单独建用户 + 做最小权限。
官网给你一行安装命令,直接在 VPS 里贴过去跑。
为啥宿主机?
权限够用、服务好管、出问题也好排查,不用和 Docker 权限打架。
安装一开始会吐一大段安全提示(你看末尾日志就知道有多长)。核心意思就是:
- 这是 beta 项目
- bot 有读文件/执行动作的能力
- 配置不当会有风险
我看完就点 Yes 继续。老话再提:先备份。
QuickStart 默认是:
- 端口:
- 绑定:
- 认证:Token
我全部默认。
这也解释了很多人遇到的第一个问题:“为啥我在外网打不开控制面板?”
它会给你一个 URL,提示你:
- 在 本地浏览器打开
- 登录后复制回调链接
- 粘贴回终端
远程 VPS 没浏览器,这步很正常。
我选的是 Telegram,因为最省事也最稳:
- 找 @BotFather
- 拿到 token
- 粘贴进终端
小建议:token 别到处乱贴,尤其别贴到公开博客里(你看我这里已经打码了)。
安装会提示 pnpm / brew / go,我当时没装,所以报错了,但 不影响主程序跑起来。
后面需要再补的话,先跑:
它会告诉你缺啥。
如果你就想把 pnpm 补上(Debian/Ubuntu 最短路径),大概是:
安装会启用 systemd user service,并开启 lingering(日志里能看到)。
简单理解:不然你 SSH 一断,服务就跟着断。
你可以用这几条确认一下:
安装完成后会给你:
- 本地面板地址
- 带 token 的访问链接(我已打码)
因为它只绑定 127.0.0.1,你想从自己电脑打开,最简单就是 SSH 隧道:
ssh -L 18789:127.0.0.1:18789 root@你的服务器IP
然后本地浏览器访问:。
日志里有一句:
Missing Control UI assets. Build them with
意思是 UI 资源没构建。你把 pnpm 装好以后,按提示跑一下 就行。
最后会提示:
进去慢慢配,别一上来就全开工具权限(尤其你还准备把它暴露到公网的话)。
- 确认服务真的常驻
- 别把 18789 直接暴露到公网
你真要公网访问,建议走反代 + 访问控制;不然就是“我把控制面板开在公网,等人来敲门”。
- 把日志里的敏感信息处理一下
- Telegram bot token
- OAuth 回调里带的 code
- Control UI 的 token 链接
这些东西泄露了,后果一般都不太好玩。
Q1:OpenClaw 能不能用 Docker 装?
能。只是如果你后续要让它读写宿主机文件、跑工具、接各种依赖,Docker 会更容易遇到“权限不够/挂载麻烦/排错麻烦”。我这次才改回宿主机。
Q2:Control UI 为openclaw啥外网打不开?
因为默认只绑定 。用 SSH 隧道,或者自己做反代(别裸奔公网)。
Q3:安装时提示 怎么办?
就是没装 pnpm。装 node/npm,然后 。
Q4:提示 ?
装好 pnpm 后跑 。
Q5:我怎么确认 systemd 常驻没问题?
看 ,再看 。
下面是我当时的完整命令行输出(原样保留,包含全过程)。敏感信息已打码。
完整命令行输出(点开)
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/256645.html原文链接:https://javaforall.net
