最近在折腾OpenClaw的云服务部署,跑通之后回头看整个流程,最大的感触是:不少教程把门槛抬得太高了。OpenClaw本身是一个开源的AI智能体框架,你可以把它理解成一个"带大脑的自动化管家"——把大模型接入进来之后,它能帮你处理对话、执行定时任务、调用外部工具,这些能力全部通过云服务器对外提供。所谓"云服务版本",就是把这套框架安装在云端Linux服务器上,让智能体7x24小时在线,电脑、手机随时随地都能连上。
这篇文章就是一份面向纯新手的保姆级教程。我会从怎么选服务器开始,一直讲到环境配置、服务部署、模型算力接入、多端访问和常见排错。你不需要懂Linux,也不用怕敲命令,每个步骤我会同时说明操作方式和背后的原因,照着做基本就能跑通。文章里的命令基于当前主流实践整理,具体版本号和仓库地址以你安装时官方文档展示为准。
1. 云服务版本到底解决什么问题:先弄懂再动手
1.1 为什么我劝你先别折腾本地部署
我看热搜词里有大量"openclaw windows搭建"、"openclaw windows配置"之类的搜索,说明绝大多数人第一反应是在自己电脑上装。这个方向不能说错,但对大多数普通用户来说,本地部署的坑真的很多。
先说资源问题。OpenClaw框架本身不算重,Node.js运行时加上核心进程,内存占用大约在几百MB到1GB左右。但智能体一旦真正干活,比如要处理长文本、要调用模型做推理,资源占用会立刻涨上去。如果你还打算在本地跑一个大模型,8GB内存的电脑很容易被吃满,风扇狂转、系统卡顿都是常事。Windows下还要面对环境变量混乱、杀毒软件拦截、端口占用等一系列兼容问题,任何一个环节出错,排查起来都非常痛苦。
再说在线稳定性。笔记本最大的特点是"会休眠、会断网、会关机"。你出门上班,电脑一合盖,智能体就下线了。OpenClaw这种工具天生适合常驻运行,它应该像一个小服务一样稳定挂在后台,而不是依赖你记得不关电脑。热词里"openclaw windows companion"、"openclaw安卓部署"这么热,说明大家确实有"随时随地访问"的需求,而这恰恰是本地部署最难满足的——内网穿透、动态IP、路由器端口映射,每一样都够新手喝一壶。
云服务器恰好把这些痛点一次性解决:独立干净的Linux环境、公网IP直接访问、24小时在线,出了问题还随时能重置系统重来。对我来说,这是目前最合理的选择。
1.2 云服务版到底是怎么工作的
从架构上看,云服务版并不神秘。它就是把OpenClaw的核心进程跑在一台云服务器上,服务器同时负责两件事:向大模型发起推理请求,以及向用户提供访问入口。用户通过浏览器、桌面客户端或手机终端连接服务器,整个链路是"客户端—云服务器—大模型"。
这里有个很重要的认知:OpenClaw只做调度和编排,它本身不产生算力。所谓"算力",是接入的大模型提供的。你可以在服务器上调用远程的API模型,也可以在服务器本地通过Ollama这类工具跑开源模型。这个概念后面第4章会展开,在这里先记住一句话——服务器的角色是"大脑的容器",模型的角色才是"大脑本身"。
为了让你更直观地理解云服务和本地的差异,我列个简单对照:
| 对比项 | 本地部署 | 云服务部署 |
|---|---|---|
| 在线时间 | 电脑开机才有服务 | 服务器24小时在线 |
| 访问方式 | 本机或内网穿透 | 公网IP随时访问 |
| 资源上限 | 受限于本机配置 | 可随时升级配置 |
| 环境干净度 | Windows环境杂 | 全新Linux系统 |
| 成本 | 电费加现有设备 | 按量付费或月付 |
1.3 适合哪些人、门槛是什么
如果你属于下面这几类人,云服务版本特别适合你:想搭一个常驻的个人AI助理;希望AI能定时执行任务,比如每天早上抓取信息生成简报;或者想在办公室、家里、手机上用同一个智能体实例。反过来,如果你只是想在本地电脑上体验两分钟,那倒不必上云,本地装个环境随便玩玩就行。
门槛方面,硬性条件只有三个:一台云服务器、能登录服务器的账号、一个模型服务商的API Key(或者愿意在服务器上装Ollama跑本地模型)。服务器配置我建议2核4G起步,硬盘40G以上。4G内存是我认为比较舒服的起步线——只接API时绰绰有余,以后想尝试本地小模型也不会立刻被内存卡死。
2. 准备工作:先把服务器和环境这四件事搞定
2.1 服务器选型:配置、镜像和区域
云服务商的选择我这里不展开推荐,各家都有新用户优惠,挑口碑稳定的就行。创建服务器时有三个设置值得留意。
系统镜像选Ubuntu 22.04 LTS。原因很简单:LTS版本维护周期长,社区资料最全,你遇到问题搜到的解决方案大概率是针对这个版本的。很多默认镜像用的是Debian或CentOS,也不是不能用,但教程通用性差一些,新手容易卡在一些细节差异上。
配置方面,如果是按量计费,2核4G是第一推荐;如果预算非常紧张,2核2G接API也能跑,但我不建议,因为后面想加个本地模型就彻底没戏了。硬盘不用太大,但至少给40GB,Node模块和将来的模型文件都很占空间。
区域选择上,选择离你实际使用网络链路更近的区域即可,服务器到你的设备延迟低,面板操作体验才跟手。创建完成之后,你会得到一串公网IP和root用户密码,这就是你进入服务器的钥匙。
2.2 用SSH登录服务器:第一步别慌
登录Linux服务器靠的是SSH协议。Windows 10及以上系统自带了OpenSSH客户端,不用额外装软件。打开PowerShell,输入下面的命令然后回车:
ssh 用户名@服务器公网IP用户名取决于镜像,Ubuntu常见的是root或者ubuntu,云厂商创建时一般会明确告诉你。第一次连接会出现一段关于fingerprint的确认提示,大意是问你是否信任这台主机,输入yes回车即可。
然后会要求输入密码。这里有个特别容易吓到新手的点:密码输入时屏幕完全没有任何回显,连星号都没有,这是正常现象,不是键盘坏了。输完直接回车就行。如果连续输错被服务器临时锁定,不要慌,去云厂商控制台远程登录或者重置密码即可。
登录成功的标志是出现一行类似root@xxxxxx:~#的提示符,到这一步你已经拥有了服务器的控制权。对新手来说,先用密码登录把流程跑通就够了,密钥登录可以等部署完成后再优化。
2.3 更新系统并安装基础工具
新服务器的软件环境可能停留在镜像制作时的状态,所以第一件事是更新软件源和已有软件包。在提示符后面执行:
apt update && apt upgrade -y这个过程可能持续几分钟,取决于服务器带宽。之后安装一些部署必需的常用工具:
apt install -y curl wget git unzipcurl用来下载文件,wget用来拉取脚本,git用来克隆代码仓库,unzip处理压缩包。这些工具后续步骤都会用到,现在装好省得后面报"command not found"。
如果你登录的用户不是root,那每条命令前面都要加sudo。为了减少麻烦,我建议在Ubuntu镜像创建时直接选root用户,或者先用sudo -i切换到root。原因没有别的,就是保姆级教程方便你我。
2.4 防火墙和安全组:外部访问不通的元凶
这是新手最容易忽略的一层。云服务器其实有两道"门禁":第一道是云厂商控制台里的安全组规则,第二道是系统内部的防火墙。两道都放行了,外面的流量才能进来。
大量"部署成功了但外网打不开"的案例,80%都是因为控制台安全组没有放行对应端口。默认情况下,安全组通常只放行22端口用于SSH登录。等OpenClaw跑起来之后,你访问它的Web面板需要一个端口号,假设我们用3000端口,那就要去云厂商控制台找到"安全组"或者"防火墙",添加入方向规则:
- 协议:TCP
- 端口:3000(或你实际配置的端口)
- 来源:0.0.0.0/0(表示允许所有IP访问)
系统内部的ufw防火墙,我建议现阶段先不要启用,少一层拦截就少一个变量。如果你确实想开,等部署稳定后再执行:
ufw allow 22/tcp ufw allow 3000/tcp ufw enable但务必小心,不要把22端口关掉,否则你连SSH都进不来,只能去控制台重置。
3. 核心部署:Node.js搞定后,OpenClaw三步跑起来
3.1 先搞明白OpenClaw的安装逻辑
很多人一上来就复制粘贴命令,报错之后完全不知道问题出在哪。其实OpenClaw本质是一个基于Node.js的Web应用,安装过程可以拆成三句话:
- 给系统装一个Node.js运行时;
- 从Git仓库把OpenClaw源码拉下来;
- 用npm安装依赖,然后按需修改配置文件。
理解了这三步,遇到报错就不会乱。所有问题都能归到这三类:环境没装对、代码没拉全、配置没写好。下面按顺序来。
3.2 安装Node.js:用nvm而不是直接用包管理器
为什么我不推荐用apt install nodejs?因为Ubuntu软件源里的Node.js版本往往比较旧,而OpenClaw这类新项目通常需要较新的Node版本。用nvm的好处是:它是装在用户目录下的,不需要root权限,还能自由切换Node版本,出问题随时回退。
安装nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash安装完成后,让配置立即生效:
source ~/.bashrc然后验证:
nvm -v看到版本号说明nvm装好了。接着安装Node.js 20 LTS版本:
nvm install 20安装完成后分别验证node和npm:
node -v npm -v如果都输出了版本号,环境这一步就过了。补充一个国内用户经常需要的小操作:npm默认的官方源下载依赖很慢,可以换成npm镜像源,这一步不是必须的,但能让后面npm install快不少:
npm config set registry https://registry.npmmirror.com3.3 拉取OpenClaw源码并安装依赖
先建一个专门放项目的目录,免得文件散得到处都是:
mkdir -p /opt/openclaw && cd /opt/openclaw然后从官方仓库克隆代码。官方仓库地址以你看到的官方文档为准,常见格式是:
git clone 官方仓库地址 .注意结尾那个点,表示克隆到当前目录,避免再套一层子文件夹。
接下来安装依赖:
npm install这一步会下载大量依赖包,耗时几分钟是正常的。整个过程可能会刷出一堆warning,只要不是error,都不用管。如果中途真的报错,先删掉node_modules目录和package-lock.json文件重试一次。强制重装也常能解决问题:
npm install --force如果你拉取的版本明确要求pnpm,那就先装pnpm再安装依赖,具体以官方仓库的README说明为准。
3.4 初始化配置:环境变量怎么填
复制官方提供的环境变量模板:
cp .env.example .env然后编辑这个文件。新手建议用nano,比vim友好太多:
nano .env文件里常见的配置项包括:服务监听端口、模型服务商、模型名称、API接口地址、API Key、管理员账号密码等。这里先填哪个?我的建议是只填必要项,比如服务端口和一个模型的API Key,先把服务跑起来,复杂的配置后面逐步加。
保存退出在nano里的操作是:按Ctrl+O回车,再按Ctrl+X。如果后面想改模型配置,用同样的方式重新编辑就行。
这里必须多唠叨一句:API Key相当于你家门钥匙,不要截图发到群里,不要贴到博客里,更不要不小心提交到Git仓库。如果发现泄露,第一时间去服务商后台吊销旧Key生成新Key。
3.5 启动服务并用pm2守护进程
先用前台方式验证能不能跑起来。进入项目目录后执行:
npm run start或者看package.json里的scripts字段,按对应的启动命令执行。看到类似"Server is running on port 3000"或"listening"字样的日志,说明服务已经起来了。
问题在于,直接npm start启动的进程会在你断开SSH连接时被系统杀掉,所以必须用一个进程守护工具,这里推荐pm2。先全局安装:
npm install -g pm2然后从项目目录启动:
pm2 start 入口文件 --name openclaw入口文件的位置每个项目不一样,通常写在package.json的scripts.start里,常见的有src/index.js、dist/main.js。以官方文档标注为准。
设置开机自启:
pm2 startup pm2 save到这一步,你关掉PowerShell、重启服务器,OpenClaw都会自己爬起来,这才是云服务版该有的样子。日常运维看状态用pm2 status,看日志用pm2 logs openclaw --lines 100,这两条命令后面排错会频繁用到。
3.6 验证部署:本地通不等于外网通
先在服务器上测试自己通不通:
curl -I http://127.0.0.1:3000返回HTTP状态码200或者类似的响应,说明服务正常。接着在你自己电脑的浏览器里访问http://服务器公网IP:3000。能打开登录页面,恭喜,OpenClaw的核心部署已经完成。
如果打不开,别急着怀疑代码,按第2.4节顺序检查:安全组放行没有、系统防火墙开没开、服务器本身端口监听有没有。这三样检查完,绝大多数问题都能解决。
4. 算力与模型接入:API和Ollama两种路线怎么选
4.1 先回答"OpenClaw只能用接入API的方式使用算力吗"
这是热搜词里特别典型的一个问题,答案是:不是。很多人把OpenClaw理解成一个"模型"了,其实它跟模型是两码事。OpenClaw负责的是智能体的调度逻辑,真正干活的大模型通过两种方式提供:一种是第三方模型服务商开放的API,按调用量付费,算力跑在服务商的服务器上;另一种是你在自己的服务器上通过Ollama跑开源模型,算力吃的是这台服务器自己的硬件。两种方式OpenClaw都支持。
为了让你选得明白,我把两条路线拆开对比:
| 对比项 | API方式 | Ollama本地模型 |
|---|---|---|
| 算力来源 | 模型服务商的云端 | 服务器自己的CPU/GPU |
| 成本结构 | 按token量付费 | 模型免费,电费和流量费 |
| 数据隐私 | 配置和对话内容会发给服务商 | 数据不出你的服务器 |
| 响应速度 | 取决于网络链路 | 本地延迟低,但看硬件 |
| 模型效果 | 可选用闭源最强模型 | 开源模型,上限略低 |
| 配置难度 | 简单,填Key就行 | 稍高,要处理模型下载 |
4.2 方式A:接API服务,适合快速跑通
如果你一开始只想把流程跑通,强烈建议先用API方式。具体操作:
先去模型服务商平台注册账号,创建一个API Key。创建成功后,把Key复制保存,然后编辑OpenClaw项目里的.env文件,填入对应配置:
MODEL_PROVIDER=兼容OpenAI的服务商标识 API_BASE_URL=服务商提供的接口地址 API_KEY=你的Key MODEL=模型名称注意OpenClaw大多兼容OpenAI格式的接口,所以这里模型名称要写服务商文档里明确支持的模型ID,别自己猜。填完保存,重启服务让配置生效:
pm2 restart openclaw然后在Web面板里发一条消息做测试,能看到模型回复就算通。如果你的网络到服务商链路不稳定,出现持续超时,优先检查服务器的DNS、防火墙和是否开了代理,而不是反复改代码。
我的习惯是,新项目先用一个便宜的小模型跑通全流程,确实没问题了再换更强的大模型。这样即使出错,损失也小,排错范围也清楚。
4.3 方式B:用Ollama在服务器上跑开源模型
如果你的需求对数据隐私敏感,或者想控制长期API花费,就在服务器上装Ollama。安装命令很省事:
curl -fsSL https://ollama.com/install.sh | sh装好后拉取一个开源模型,比如Qwen系列的7B/8B版本:
ollama pull qwen2.5:7b拉取完成后确认模型列表:
ollama list然后回到OpenClaw的.env,把模型指向本地地址:
OLLAMA_BASE_URL=http://127.0.0.1:11434 MODEL=qwen2.5:7bOpenClaw和Ollama都跑在同一台服务器上,走127.0.0.1是最稳的,不需要对外暴露Ollama的端口,也更安全。
这里必须给个诚实的硬件建议:7B/8B参数的模型推理时,内存占用轻松超过8GB,2核4G的服务器跑起来会很吃力,响应会明显变慢。只有4G内存的服务器,建议老老实实选3B/4B的小模型,或者干脆继续用API。本地模型不是越大越好,而是你的内存能扛住才算好。
4.4 skill是啥:先别急着加,先让基础对话跑通
热词里有"openclaw skill",很多新手一上来就想给智能体装各种技能包。skill可以理解为预置给智能体的一组能力和工作流,比如联网搜索、读网页、执行脚本、调用第三方工具。装上之后,智能体就能在对话中自主调用这些技能。
但我的建议是:先让基础对话跑通,再加skill。原因很简单,skill本身不需要额外算力,可一旦启用,智能体会在多轮任务里消耗更多token、更多推理时间,出问题的面也会变大。先确保模型连接稳定,再逐步叠加技能,这样出任何问题你都能判断是模型的问题、框架的问题还是技能包的问题,排查边界非常清晰。
5. 多端访问:Windows companion、手机Termux与进阶配置
5.1 Windows companion到底怎么连远程服务器
很多人搜"openclaw windows companion怎么配置",说明这是Windows用户最高频的疑问。companion可以理解为官方或社区提供的桌面配套客户端,它帮你把远程服务器上的OpenClaw状态同步到桌面,操作起来比敲命令直观很多。
配置核心只有三项:服务器地址、访问凭据、连接校验。服务器地址填http://服务器公网IP:端口,访问凭据填OpenClaw面板里配置的账号密码或API Token。填完点连接就行。
连不上时按这个顺序排查:先确认服务器上的OpenClaw进程在线,再确认公网端口放行,最后确认Token和账号密码没输错。三步走完基本能定位问题。还有一点值得提醒:如果你开了Token校验,尽量先配置HTTPS再在公网上使用,否则登录凭据是明文在网络里传的,有被截获的风险。
5.2 手机端:Termux是遥控器,不是服务器
热搜里的"openclaw安卓部署"和"termux安装openclaw手机版"很蛊惑人心。我可以负责任地说:不要把OpenClaw核心服务装在手机里。原因很现实:手机后台进程容易被系统清理,Termux环境下的进程常驻不可靠,长时间运行发热掉电,而且手机算力也扛不住模型推理。手机的角色是做"客户端"和"遥控器"。
最实用的方案是手机浏览器直接访问http://服务器公网IP:端口,把Web面板当手机App用。如果你想在手机上做运维,可以在Termux里装一个SSH客户端:
pkg update && pkg install openssh然后远程连接你的服务器:
ssh root@服务器公网IP连接成功后,你可以执行pm2 restart openclaw这类运维命令。手机上敲命令确实不如电脑方便,但应急管理足够了。至于那些第三方打包的"openclaw手机版apk",如果不是官方发布的,尽量不要装,安全和稳定性都不可控。
5.3 进阶:域名加HTTPS,值得做但不用急
裸IP配端口的方式能跑通,但有两个明显短板:一是访问凭据明文传输,二是IP地址难记。进阶做法是买一个域名,解析到服务器IP,然后用Nginx反向代理,把HTTP升级成HTTPS。
简要步骤是先装Nginx:
apt install -y nginx然后写一个server块,把域名对应的流量反向代理到127.0.0.1:3000,再通过证书工具申请免费证书,配置443端口。这一步对新手来说属于"锦上添花",核心服务跑通之后再去折腾完全来得及,不要一开始就和部署混在一起做,否则排错会非常痛苦。
6. 高频报错实战排查:从WSL2报错到外网连不上
6.1 "OpenClaw无法安全验证WSL2环境,请在PowerShell中运行wsl --status"
这个报错说法在热搜里出现得很频繁,值得单独拎出来讲。它一般出现在Windows本地部署的场景,核心原因是OpenClaw的某个脚本或依赖需要WSL2环境,而系统当前的WSL没有满足要求。注意:如果你是在云服务器上部署,压根不会碰到这个问题;如果你确实是在Windows本地装,那处理思路如下。
以管理员身份打开PowerShell,先执行:
wsl --status查看当前状态。如果提示没有安装子系统,执行:
wsl --install如果已经装了但版本是WSL1,执行升级到WSL2,发行版名替换成你实际的名称:
wsl --set-version 发行版名 2然后更新内核:
wsl --update做完之后重启电脑再看。这个报错揭示了一个重要思路:看到奇奇怪怪的错误,先判断它发生在哪个环境里,再决定要不要处理。很多人盲目复制命令,把Windows的问题带到云服务器上,反而越来越乱。
6.2 npm安装依赖一直失败或超时
npm install失败的原因通常是三个:网络链路问题、node版本兼容问题、磁盘空间不足。处理顺序也按这三个来。
先换更快的镜像源:
npm config set registry https://registry.npmmirror.com同时清理缓存并强制重装:
npm cache clean --force rm -rf node_modules package-lock.json npm install --force如果还是失败,检查一下磁盘空间:
df -h我曾经有次装依赖装到一半报错,排查半天发现是根目录被日志文件塞满了,清完空间秒好。这种事在云服务器上其实很常见,尤其是小硬盘机型。
6.3 服务起来了,外网死活打不开
这是新手求助率最高的问题。按照下面的顺序查,基本五分钟内能定位:
| 顺序 | 检查项 | 方法 |
|---|---|---|
| 1 | 服务是否在线 | pm2 status |
| 2 | 端口是否监听 | ss -lntp | grep 端口号 |
| 3 | 本机HTTP测试 | curl -I http://127.0.0.1:端口 |
| 4 | 云控制台安全组 | 入方向是否放行该端口 |
| 5 | 系统防火墙 | ufw status |
我的经验是,第4步的命中率最高。云厂商默认只放行22端口,其他端口需要主动加规则,很多人部署完忘记这一步,外部流量根本到不了服务器。另外,如果你用了宝塔这类面板工具,面板自带的"安全"里也有端口放行规则,相当于第三道门,同样要检查。
6.4 模型调用报错:Key无效、超时、模型不存在
模型接入后报错,基本就是下面几种情况,我整理成一张对照表:
| 错误提示 | 大概率原因 | 处理方式 |
|---|---|---|
| 401或403 | API Key错误 | 核对.env,重新创建Key |
| connection timeout | API服务不可达 | 检查DNS、防火墙、代理设置 |
| model not found | 模型名称填错 | 查服务商文档确认模型ID |
| context length exceeded | 对话过长超出上下文 | 新开会话或精简历史 |
| connection refused | Ollama没启动 | 启动Ollama服务再重试 |
这些错误里,最容易被忽略的是"改了.env没生效"。配置文件改完,一定记得重启OpenClaw进程:
pm2 restart openclaw否则服务还是用旧配置跑,看起来就像"代码坏了"。想确认配置有没有被正确加载,可以执行:
env | grep -i 模型相关关键词直接看环境变量实际值,比反复猜测高效得多。
6.5 配置多次调整后依旧不对:养成备份习惯
如果你改了好几次配置仍然行为诡异,很可能是某个环境变量里混入了不可见字符,比如复制Key时把多余的空格或者换行符带进去了。此时用env | grep -i检查实际值,肉眼确认没有空格和其他杂质。
另外给新手一个成本极低的保命习惯:每次大改配置前,先备份原文件:
cp .env .env.bak出了一个小时都没看懂的诡异问题,直接把坏掉的配置扔掉,恢复备份重来,往往比硬修快得多。这不算什么高级技巧,但确实是持续折腾OpenClaw这类项目最实用的习惯。
整套流程我自己踩过的坑,总结成一句话就是:先跑通最简链路,再叠加复杂程度。我第一次拿到云服务器的时候,一上来就想把API、Ollama、Skill、域名全配好,结果哪个环节出问题都不知道从哪里查,最后全部重置,老老实实按"装Node、拉代码、配一个模型、浏览器打开"的顺序走,四十分钟跑通。之后加Ollama、加companion、加Nginx,每一步单独验证,反而快得很。
最后再分享两个小技巧:一是所有Key和敏感配置都放.env,别写进代码,更别发截图;二是养成看日志的习惯,pm2 logs openclaw --lines 100基本上解决了我80%的运维焦虑。希望这份保姆级教程能让你第一次接触OpenClaw云服务版本时少走弯路,一次跑通。