前阵子我把 OpenClaw 从本地 Windows 搬到腾讯云主机上,整个过程比我想象中顺利很多。如果你还没接触过 OpenClaw,简单说它是一个开源的个人 AI 助手框架,可以对接兼容 Anthropic API 的模型,也能接本地部署的 Ollama,用来集中管理对话、技能和自动化任务。很多人在自己电脑上搭完之后,会发现“7x24 小时在线、随时访问”才是真正省心的玩法,于是很自然就会想到放到云主机上。这篇文章就把我在腾讯云上从零安装 OpenClaw 的完整过程写出来,分步骤讲清楚每一步为什么要这么做,以及有哪些坑需要提前避。为了照顾第一次摸云主机的新手,我会尽量少用黑话,每一步都给可以直接复制的命令。
我选的方案是:一台配置不高但稳定的腾讯云云服务器(CVM 或者轻量应用服务器都可以),系统用 Ubuntu 22.04 LTS,然后装 Node.js、PM2、OpenClaw,再用 PM2 守护进程,让它在后台一直跑。之所以说“超级简单”,是因为 OpenClaw 本身就是一个纯 Node.js 项目,不需要编译 C++、不需要装数据库,跟着官方文档走一遍安装命令,再用 PM2 托管一下,剩下的就是配置模型接入和打开 Web 管理界面。下面我就按实际操作的顺序,把每一步和踩到的坑都展开聊聊。
1. 为什么选择在腾讯云主机上部署 OpenClaw
1.1 OpenClaw 到底是什么,能解决什么问题
OpenClaw 定位是“个人 AI 助手框架”,它的核心逻辑是:把你常用的对话能力、工具调用、技能脚本和外部 API 集中在一个本地服务里,通过一个 Web 界面或者语音入口来控制。和直接在网页上访问模型服务不同,OpenClaw 更像一个“管家”,它能自己管理多轮会话、保存历史、安排任务,还能调用外部技能(比如查天气、记笔记、写日报)。我理解的它另一个好处是“模型可替换”:你可以用 OpenAI、Anthropic 的 API,也可以接自己部署的 Ollama 本地模型,成本可控,数据也不容易外泄。
由于它本质上是常驻进程,所以最舒服的运行环境就是一台一直开机的机器。本地笔记本虽然也能跑,但一合盖、一休眠,服务就断了。把它放到云主机之后,你出门在外用手机浏览器就能连上,随时和你的助手说话、查日志、触发任务,这才是真正的“个人助理”。腾讯云主机在国内访问速度不错,新用户还有优惠套餐,用来跑 OpenClaw 这类轻量 Node 服务绰绰有余。
1.2 云主机部署和本地部署的区别
本地部署的好处是你什么都不用买,双击脚本就能跑;坏处是网络不稳定、电脑没法长期待机、内网穿透又得折腾。云主机部署正好把这些“不靠谱”全部解决。你只要保证主机不欠费、系统不崩,服务就一直在。另外 OpenClaw 的安装包和模型 API 请求都是走公网,腾讯云主机到海外模型 API 的网络连接质量通常比家庭宽带更稳定,超时和断流少很多。
当然,云部署也有代价:一是要花钱租机器,二是需要有一点 Linux 基础。不过这个代价很小,尤其对于想认真用 AI 助手的人来说,每天几毛钱换一个 7x24 在线的私人 AI 管家,我觉得非常值。
1.3 选哪款腾讯云主机最合适
根据 OpenClaw 的官方建议,Node.js 跑起来占用的内存不大,但如果你要同时跑 Ollama 本地模型,那就另说了,至少得准备 8GB 内存。我的建议是:
- 只跑 OpenClaw,模型走远程 API:2核4G 的主机就够了,轻量应用服务器足够;
- 想同时跑 Ollama 做本地推理:最低建议 4核8G,且硬盘要有 20GB 以上剩余空间;
- 如果你预算有限,也可以先用 2核4G 的轻量服务器,后续不够了再升配。
我在腾讯云上用的是“轻量应用服务器”,选 Ubuntu 22.04 LTS。为什么要选 Ubuntu?因为 OpenClaw 官方脚本对 Ubuntu/Debian 支持最好,遇到问题也最容易搜索到答案。CentOS 虽说也能跑,但各种依赖名称不同,反而多花时间。所以新手第一台机器直接选 Ubuntu 就好。
2. 部署前的主机准备:系统、安全组与登录
2.1 系统版本与安全组配置
拿到服务器之后,第一件事不是急着装软件,而是把系统镜像确定好。如果你还没选系统,就在腾讯云控制台把系统重装成 Ubuntu 22.04 LTS。注意重装会清空数据,所以最好在刚买完时就选好镜像。
然后要去控制台里配置“防火墙”或者“安全组”。腾讯云的轻量应用服务器有独立的“防火墙”页面,CVM 则在“安全组”里配置。我这次需要在主机上访问两个端口:
- 22 端口:SSH 登录(默认一般会放行,如果没放行会连不上)
- 你自己选的 OpenClaw Web 端口:比如 3000 或 8899,需要放行,否则浏览器访问不到。
我记得自己第一次部署时,明明服务已经起来了,但浏览器一直打不开,检查了半天才发现是腾讯云控制台防火墙里的 TCP 端口没有添加。这个坑很基础,但真的很多人会遇到,所以特意放在最前面说。
2.2 用 SSH 密钥登录而不是密码
腾讯云主机默认支持密码登录,但我强烈建议你创建密钥对,然后用密钥方式 SSH 登录。原因很简单:密码容易暴力破解,密钥登录更安全;而且密钥文件放在本地电脑上,每次登录不用输密码,方便很多。你可以在腾讯云控制台左侧找到“密钥对”菜单,新建一个密钥,然后把公钥绑定到你的服务器。绑好之后,本地电脑用私钥文件连接:
chmod 400 ~/Downloads/tencent_cloud_key.pem ssh -i ~/Downloads/tencent_cloud_key.pem ubuntu@你的服务器公网IP如果你是 Windows 用户,推荐直接用 PowerShell 自带的 OpenSSH 客户端。如果私钥文件权限报错,用 icacls 给当前用户添加完全控制权限就好:
icacls .\tencent_cloud_key.pem /grant "$($env:USERNAME):F"不要觉得配密钥很麻烦,这是整个部署流程里我认为最值得做的一件事。之后每次从终端连服务器,一行命令就能进去,安全性也拉满。
2.3 创建普通用户(可选但习惯好)
很多时候你会用 root 用户操作腾讯云主机,这没问题,但长期在 root 下跑服务有风险。我在实际部署时,是用 root 登录,然后新建了一个叫openclaw的普通用户,再用su - openclaw切换过去。这么做的原因是:万一 OpenClaw 有安全漏洞,进程权限被网页劫持,至少不是 root 级别的破坏。如果你是新手嫌麻烦,可以直接在 root 下操作,但最好至少设置一下防火墙,别把不必要的端口暴露出去。
创建用户和给目录权限的命令如下:
sudo adduser openclaw sudo usermod -aG sudo openclaw sudo mkdir -p /opt/openclaw sudo chown -R openclaw:openclaw /opt/openclaw随后所有安装步骤都在openclaw用户下进行,这样后续维护更清晰。
3. 安装 Node.js 环境:选对版本是成功的一半
3.1 为什么不用系统自带的 Node.js
Ubuntu 22.04 的软件源里默认 Node.js 版本比较老,而 OpenClaw 对 Node.js 的版本有要求。如果你直接用apt install nodejs,装完大概率会卡在版本过旧,连启动都报错。我踩过这个坑,所以这次特意去 NodeSource 或者用 nvm 安装 Node.js 20 LTS。推荐用 nvm,因为之后想升级 Node 版本,一条命令就能搞定,不用重新编译。
3.2 用 nvm 安装 Node.js 20 LTS
以普通用户身份执行以下命令:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash安装完成后,退出再重新登录终端,或者执行source ~/.bashrc,然后确认:
nvm --version nvm install 20 node -v npm -v注意,如果你用 root 用户执行nvm,环境变量可能加载不出来,经常出现“command not found”。解决方法是检查~/.nvm/nvm.sh是否存在,然后手动source一下。我个人习惯是新建普通用户后用 nvm,这样路径干净,不会和系统 Node 冲突。
3.3 配置 npm 镜像,避免卡在下载
这一步是我觉得“腾讯云上超级简单安装”的关键点之一。OpenClaw 安装时需要从 npm 官方仓库拉取大量包,如果直接连默认源,速度不快且容易超时。在腾讯云主机上,最顺滑的做法是把 npm 默认源换成国内镜像(比如腾讯云 npm 镜像站)。执行:
npm config set registry https://mirrors.cloud.tencent.com/npm/然后在~/.npmrc里确认设置生效。我记得当时换完镜像,npm install的速度提升了不止一个档次,很多包基本秒下。这一步不算做手脚,就是国内网络环境下的常规优化手段,合规且有效。
3.4 安装 PM2 进程守护器
OpenClaw 是一个前台进程,如果你直接开终端跑它,关掉终端它也跟着退出。所以必须用进程守护工具把它托管起来。最常用的是 PM2,它崩溃自动重启、开机自启、日志管理都很方便。安装命令:
npm install -g pm2 pm2 --versionPM2 会在系统里建立一个守护服务。之后无论你是用 SSH 断开还是服务器偶发重启,PM2 都能把 OpenClaw 拉起来。这也是“7x24 在线”的关键组件。
4. 安装 OpenClaw 本体:一步步来
4.1 获取 OpenClaw 并装依赖
OpenClaw 的官方安装方式有两种:一种是直接克隆 GitHub 仓库,然后 npm install;另一种是使用官方提供的安装脚本,会自动检测环境并安装。对于腾讯云 Ubuntu 主机,我更偏向使用官方脚本,因为它会把一些系统级依赖帮你处理掉。不过脚本可能不是最新,如果你想要一个可控性更强的安装,就手动来。
手动安装大致是这样:
git clone https://github.com/openclaw/openclaw.git ~/openclaw cd ~/openclaw npm install npm run build注意/openclaw仓库结构可能会变,但核心流程不会差别太大。仓库下载速度如果太慢,可以先检查 git 是否有代理配置干扰,没有的话就耐心等一下。我个人实测,在腾讯云主机上 clone 这个仓库大概只需要几十秒,npm install 镜像配置好之后,一两分钟也就完成了。
4.2 配置模型接入:API 和 Ollama 两条路
OpenClaw 不会凭空有智能,你需要告诉它用哪个模型服务。一般有两种选择:
- 远程 API:适合不想在主机上再跑一个大模型的人。配置时你需要一个 API Key,支持 Anthropic 风格兼容接口。此时主机内存只需 4G 左右,CPU 压力也很小。
- 本地 Ollama:适合想要完全本地推理、不依赖外部 API 的人。先在主机上安装 Ollama,再拉取一个模型(比如 qwen2.5:7b),然后把 OpenClaw 连接地址指向
http://127.0.0.1:11434。
这两种方式如何选择?如果你只是日常聊天、写文案、做计划,远程 API 更省心,按量付费,响应速度也快。如果你对数据隐私要求高,或者希望断网也能用,那就用 Ollama。我在腾讯云主机上用的是远程 API,因为 2核4G 跑 7B 模型实在太吃力,不如把算力放到云端。
OpenClaw 的配置文件一般是.env或者config.json,你需要在里面填写模型服务地址和 Key。这里涉及具体字段,以官方 README 为准。记住一个原则:不要把真实 API Key 硬编码到前端代码里,只放在服务端环境变量中。
4.3 启动验证
安装和配置完成之后,先不要急着用 PM2 托管,直接在终端启动一次,看看有没有报错:
npm start如果看到类似 “OpenClaw is running on port 3000” 的日志,说明启动成功。此时在本地电脑浏览器里访问:
http://你的服务器公网IP:3000就能看到 OpenClaw 的 Web 管理界面。如果打不开,先往上翻,多半是腾讯云控制台防火墙没放行 3000 端口,或者 OpenClaw 监听的是127.0.0.1而不是0.0.0.0。这个问题在配置里需要把 host 设为0.0.0.0,这样外网才能访问到。
4.4 用 PM2 让 OpenClaw 常驻后台
确认本地运行没问题之后,就可以把它交给 PM2。先停掉当前进程,然后在项目目录里执行:
pm2 start npm --name openclaw -- start pm2 save pm2 startuppm2 startup会生成一条开机自启命令,你按提示在 root 下执行那行命令即可。这一步之后,即使服务器重启,OpenClaw 也会自己爬起来。查看日志用:
pm2 logs openclaw一旦发现进程频繁重启,可以去看具体报错,是内存不足还是 Key 配错。PM2 的超能力就在这里,日志集中管理,排查起来效率太高了。
5. 腾讯云主机上部署 OpenClaw 会遇到的问题与排查实录
5.1 安全组 / 防火墙端口没开
这个问题我前面已经提到了,但值得再展开说。症状是:服务进程明明活着,日志也没报错,但浏览器访问超时。解决办法分两步:第一步,在腾讯云控制台放行对应端口,我通常只放行某些已知 IP 的访问,减少暴露风险;第二步,检查 OpenClaw 是否监听在0.0.0.0,用ss -tlnp | grep 3000查看。如果显示监听的是127.0.0.1,就去配置里改 host。
5.2 内存不足导致安装或启动失败
如果在npm install阶段进程被杀,通常就是内存不够。Ubuntu 系统本身占用几百兆,Node 安装依赖时又可能同时吃很多内存,2G 内存的主机就容易 OOM。解决办法有几个:
- 用
free -h看看实际可用内存; - 关闭系统里不需要的常驻进程;
- 临时加 swap 文件,比如 4G swap,基本就能平稳度过安装期。
创建 swap 的命令是这样的:
sudo fallocate -l 4G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile把这条加到/etc/fstab里可以永久生效。装完 OpenClaw 后,如果只跑远程 API,swap 不一定要删除,留着做兜底挺好。
5.3 API Key 或环境变量配置错误
OpenClaw 启动不报错,但对话时提示认证失败,多半是环境变量没配对。建议在配置文件中把 Key 写在双引号里,不要有多余空格。另外,不同模型服务有不同基础路径,按照服务商提供的信息填写。我一般会在.env.example文件基础上复制一份.env,然后只改需要的字段,避免格式错漏。
5.4 Node 版本不兼容
OpenClaw 对 Node 版本要求比较严格,如果你启动时报SyntaxError: Unexpected token,大概率是 Node 版本太低。解决方式是升级到 Node 20 LTS。如果你用的 nvm,那就非常简单:
nvm install 20 nvm alias default 20然后再重启 OpenClaw。这一点在腾讯云主机的老镜像上特别容易出现,因为你装的系统自带 Node 可能才 12.x 或 16.x。
5.5 常见问题速查表
| 现象 | 原因 | 解决办法 |
|---|---|---|
| 浏览器无法访问 | 防火墙未放行 / 监听地址不对 | 控制台放行端口;host 改为 0.0.0.0 |
| npm install 卡住 | 默认源太慢 | 设置腾讯云 npm 镜像 |
| 安装时进程被杀 | 内存不足 | 增加 swap 或升级配置 |
| 启动报语法错误 | Node 版本过低 | 用 nvm 升级到 Node 20 |
| 对话时认证失败 | API Key 配置错误 | 检查 .env 中的字段 |
| 服务器重启后服务消失 | 未配置 PM2 startup | 执行 pm2 save 和 pm2 startup |
6. 实操心得与进一步优化
6.1 给 OpenClaw 套一层反向代理
虽然直接用 IP 加端口也能访问,但为了以后用自定义域名、加 HTTPS 证书,还是建议在腾讯云主机上装一个 Nginx 作为反向代理。方案很简单:把域名解析到主机公网 IP,Nginx 监听 443 并配置 SSL,再把请求转发到 OpenClaw 的 3000 端口。这样以后在公共场所访问时不会有“不安全连接”的尴尬,也不容易被奇怪脚本扫描到。
Nginx 配置里有一段核心配置类似:
server { listen 443 ssl; server_name your.domain.com; ssl_certificate /etc/nginx/ssl/cert.pem; ssl_certificate_key /etc/nginx/ssl/key.pem; location / { proxy_pass http://127.0.0.1:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }如果你的腾讯云主机还没有备案域名,那暂时只能用 IP 访问,但也没关系,先跑起来再说。
6.2 定期备份配置和技能目录
OpenClaw 的价值在于它会逐渐积累你的对话记录、技能和个性化配置,这些一旦丢了很难补回来。所以我会每周做一次备份,把项目目录里的数据和配置文件打包,上传到腾讯云对象存储 COS。备份命令不复杂:
tar -czf openclaw-backup.tar.gz ~/openclaw --exclude=node_modules然后用 COS 的 API 或者coscmd上传。第一次设置麻烦点,但之后就是一条命令的事。
6.3 关于内存和成本的一点个人选择
我在腾讯云主机上用的是 2核4G 的轻量应用服务器,跑 OpenClaw + Nginx + PM2,剩余内存还有 2G 多。如果只是接远程 API,这个配置完全够用。如果你以后想让 Ollama 跑本地模型,那就别想着省钱,直接升到 4核8G。我自己不会为了追求“本地推理”而牺牲主机的稳定性,毕竟 OpenClaw 的核心是“随时可用”,模型服务可以放云端。
6.4 最后分享一个部署时的小技巧
每次修改 OpenClaw 配置,我习惯先用pm2 restart openclaw重启,然后用pm2 logs openclaw --lines 30看一眼启动日志。如果日志里没有任何报错,再去做下一步。这个习惯帮我少走了很多弯路。还有,安装完整套环境之后,我会立刻做一次腾讯云主机快照。这样万一以后系统折腾坏了,也能一键回滚,重新部署成本几乎为零。
按这个流程走下来,你从一台全新的腾讯云主机到 OpenClaw 稳定运行,一小时以内就能全部搞定。真正的难点反而不是安装本身,而是搞懂它为什么要监听 0.0.0.0、为什么需要 PM2、为什么安全组要放行端口。把这些底层逻辑理清楚之后,你会发现“腾讯云主机超级简单的安装 OpenClaw”真的不是夸张说法,它就是一条很顺的路。