我最早动心思把 OpenClaw 搬到云服务器上,是因为发现本地电脑根本扛不住"随时在线"这个需求。笔记本一合盖,微信里的 AI 助手就失联;路由器一重启,端口映射又得重配。折腾了一周后我彻底想通了:这种常年挂机跑的服务,就不该放在自己家里。后来我选了京东云的一台入门云主机,再配上阿里云百炼的 API Key,整套 OpenClaw 部署下来比预想中顺很多,熟练之后确实能做到十分钟以内从零跑通。这篇东西不是官方文档的复述,而是我实际操作里一步步走出来的记录,适合完全没摸过服务器的零基础用户照着抄,也适合那些在本地部署踩了坑、想转投云服务器的人参考。
1. 动手之前:先搞懂 OpenClaw、京东云和百炼API 各自负责什么
很多新手一上来就急着复制粘贴命令,结果报错了也不知道去哪查。我建议先花两分钟搞清楚这套组合里三个角色分别干什么,后面排错会轻松一个量级。
1.1 OpenClaw 到底是个什么东西
OpenClaw 是一个开源的 AI 智能体网关项目,你可以把它理解成一个"总机话务员+调度中心"。它的左边接各种聊天渠道,比如微信、Telegram、Discord、网页,右边接各种大模型后端,比如 OpenAI、Anthropic、Google Gemini,以及国内的通义千问、DeepSeek 这些。它的核心价值在于:你不用在每个聊天软件里都折腾一套 AI 接入逻辑,只要在 OpenClaw 里配置一次,所有渠道就都能跟你的 AI 助手对话。
我在本地第一次跑通 OpenClaw 时,第一反应是这玩意儿很像当年 QQ 机器人时代的多协议框架,但底层能力完全不是一个级别。它不仅能聊天,还能根据你的指令调用工具、访问网页、处理简单自动化任务,本质上是一个有手有脚的 AI 代理。不过这篇先聚焦最刚需的场景:把大模型接口接进来,让微信或者网页随时能跟 AI 对话。
1.2 为什么推荐放在京东云而不是本地电脑
本地部署最大的敌人是"不稳定"。电脑休眠、断电、网络波动、运营商不给公网 IP,随便哪一条都能让你的机器人消失。云服务器解决的就是 7×24 小时在线问题,只要云厂商机房不整体宕机,你的服务就一直活着。
选京东云其实没有特别玄学的理由,就是综合性价比和可用性。对我来说三个点比较实在:一是新用户活动期价格确实低,一台入门级 2 核 4G 的实例比一杯奶茶日成本还便宜;二是国内机房访问速度快,人在国内用微信接入,延迟低不少;三是控制台逻辑清晰,安全组、防火墙这些设置都摆在明面上,对新手相对友好。当然,你用阿里云、腾讯云、华为云原理完全一样,后面所有命令都是通用的,不必被某个厂商绑死。
1.3 百炼API 在这里扮演什么角色
OpenClaw 本身不带模型能力,它需要调用外部大模型来理解你说的话。百炼API 是阿里云推出的大模型服务平台,你可以把它理解成一个大模型"加油站",按量付费,按需取用,不用自己买显卡、不用自己部署权重动辄几十 GB 的开源模型。
最关键的一点是,百炼API 提供了一个 OpenAI 兼容接口,地址是 https://dashscope.aliyuncs.com/compatible-mode/v1。这意味着所有支持 OpenAI API 格式的软件都能直接接上百炼,OpenClaw 自然也不例外。你只需要在配置里把 baseUrl 指过去、填上 API Key、选好模型名,就完成了大模型接入,整个过程不涉及任何底层适配。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 京东云主机选购与初始化:别在这一步图省事
很多人部署失败,不是后面命令敲错了,而是最开始的服务器选型和安全组设置就埋了雷。这一节我把采购到能用的完整链路捋一遍。
2.1 配置怎么选:2核4G是底线,别买1核
OpenClaw 本身是个 Node 服务,资源占用不算夸张,但它要常驻内存、处理消息队列,还要跟外部 API 通信。我实测下来,1 核 1G 的乞丐版跑起来非常勉强,日志偶尔会报内存不足,Web 管理面板打开都卡。如果你不想三分钟热度之后就放弃,直接买 2 核 4G,硬盘 40G 起步,系统选 Ubuntu 22.04 LTS 或者 Debian 12。
地域选择上,人在华北就选华北机房,人在华南就选华南,原则是离你物理距离近一点,网络延迟小一点。计费方式建议新手先选包年包月或者按量付费的短期方案,先跑通再决定要不要长租。我见过不少人一上来就买三年,结果一天都没跑起来,纯属浪费。
2.2 SSH登录:你的第一个服务器操作
服务器创建好之后,控制台会给你一个公网 IP,还会让你设置 root 密码或者密钥。新手用密码登录就够了,Mac 用户打开终端直接输入:
bash复制ssh root@你的服务器公网IP
Windows 用户可以用系统自带的 PowerShell 或者 Windows Terminal 执行同样的命令,也可以用 Xshell、FinalShell 这类带图形界面的工具。第一次连接会提示确认 host key,输入 yes 回车,然后输密码就进去了。
登录成功后,我习惯先把系统更新一遍:
bash复制apt update && apt upgrade -y
这一步不是仪式感,OpenClaw 依赖的底层组件需要较新的系统库版本,跳过容易在中途遇到莫名其妙的依赖冲突。
2.3 安全组:不开放端口就等于没开门
这是零基础用户最容易忽略、也最容易卡住的一步。云服务器默认情况下,外网根本访问不到你机器上的服务,因为安全组把外部流量挡在了门外。
OpenClaw 的 Web 管理面板默认跑在 8531 端口(不同版本可能有变化,以你启动日志里打印的地址为准)。你需要在京东云控制台找到这台实例的"安全组"配置,添加入方向规则:协议选 TCP,端口填 8531,来源 IP 可以先填 0.0.0.0/0(意思是允许所有 IP 访问),因为你需要从家里或者手机上访问管理面板。
安全组就相当于小区门禁,端口就是门牌号。你服务已经跑起来了,但门禁没登记这个门牌号,外面的人照样进不来。这个操作只做一次,后面再也不用管。
3. 安装 Docker 并用官方镜像一键拉起 OpenClaw
OpenClaw 的部署方式有好几种,有源码安装、有二进制包安装,但我强烈推荐新手用 Docker。原因很简单:Docker 把 OpenClaw 运行所需的所有环境依赖都打包好了,你不需要在服务器上装 Node.js、Python、各种编译工具链,只要把镜像下载下来跑起来就行。
3.1 Docker 环境安装:三行命令的事
Ubuntu 系统上安装 Docker 非常简单,我用的是一套官方推荐的安装方式。先安装依赖,再添加 Docker 官方软件源,最后安装 Docker:
bash复制apt install -y ca-certificates curl gnupg
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo $VERSION_CODENAME) stable" > /etc/apt/sources.list.d/docker.list
apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
装完验证一下:
bash复制docker --version
能输出版本号就是成功了。这里要提醒一句:如果 curl 拉取 docker 官方 GPG 密钥的时候比较慢或者失败,可以多试几次,或者把下载源换成你所在网络环境能稳定访问的镜像站,本质上是等价的。
3.2 配置镜像加速:拉镜像别再干等
国内服务器直接拉 Docker Hub 或者 GitHub Container Registry 的镜像,速度经常让人崩溃。我一开始没配加速,一个镜像拉了二十多分钟还没完成,后来把容器镜像加速地址写进 Docker 配置,速度才正常起来。
新建或修改 /etc/docker/daemon.json:
json复制{
"registry-mirrors": ["https://你的专属加速地址.mirror.aliyuncs.com"]
}
关于这个地址怎么拿:如果你有阿里云账号,登录阿里云控制台,搜索"容器镜像服务",在镜像加速器页面能看到一个专属地址,把它填进去就行。改完重启 Docker:
bash复制systemctl daemon-reload
systemctl restart docker
注意:这个加速地址是阿里云容器镜像服务给每个账号专用的,跟百炼API 不是一回事,别搞混。
3.3 拉起 OpenClaw 容器
我部署时使用的命令大致如下,你复制的时候注意替换成你自己确认过的镜像名和版本:
bash复制mkdir -p ~/.clawdbot
docker run -d \
--name openclaw \
--restart always \
-p 8531:8531 \
-v ~/.clawdbot:/app/.clawdbot \
你的镜像地址/openclaw:latest
这里几个参数分开解释一下:
-d:后台运行,不占住你的终端。--name openclaw:给容器起个名字,以后管理都靠这个名字。--restart always:服务器重启后容器自动拉起,这是云服务器部署的必备参数,不然宕机一次你就得手动跑一次。-p 8531:8531:把容器的 8531 端口映射到服务器的 8531 端口。-v ~/.clawdbot:/app/.clawdbot:把配置目录挂载到宿主机,这样升级容器、重建容器时配置不丢。
跑起来后看日志:
bash复制docker logs -f openclaw
日志里出现类似 Dashboard 地址、HTTP server listening 之类的字样,就说明容器正常起来了。如果你用的镜像名跟我不一样,去官方仓库的 README 里复制最新的运行命令,这是最稳妥的做法。不同版本的 OpenClaw 偶尔会调整数据目录名,我的习惯是挂载前先看官方的 Docker 文档。
4. 申请百炼API Key 并把通义千问接进 OpenClaw
Docker 容器起来只是骨架,真正让 OpenClaw 有"脑子"的是这一步。很多人在这一关卡住,其实不是技术问题,而是没搞清楚去哪申请、填什么、为什么这么填。
4.1 开通百炼平台并创建 API Key
整个流程就是:注册并登录阿里云账号,在控制台搜索"百炼"进入大模型服务平台,然后按引导开通服务。开通之后,在"API Key"页面点击创建,会生成一串以 sk- 开头的密钥,复制保存好。这串 Key 就是你调用大模型的凭证,泄露了别人就能用你的额度,所以别发到群里、别提交到公开的 GitHub 仓库。
新用户会获得一定量的免费额度,日常体验完全够用。我建议先用免费额度跑通整个流程,确定稳定运行了再考虑充值和正式计费。
4.2 在 OpenClaw 里配置模型参数
OpenClaw 的模型配置方式一般有两种:一种是在 Web 管理面板的 Settings 页面里填写,另一种是直接改配置文件。新手推荐用 Web 面板,因为界面会提示字段含义,不容易漏填。
需要填的核心参数就三个:
| 参数 | 填写内容 |
|---|---|
| 模型名称 | qwen-plus |
| API 地址 | https://dashscope.aliyuncs.com/compatible-mode/v1 |
| API Key | sk-你的百炼Key |
有些版本的 OpenClaw 是支持通过环境变量配置模型的,实际效果一样。如果你改的是 config.json 这类配置文件,结构大致是这样,字段名以你那个版本的实际模板为准:
json复制{
"model": {
"provider": "openai",
"name": "qwen-plus",
"baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1",
"apiKey": "sk-xxxxxxxx"
}
}
填完之后保持配置、重启容器,然后去面板里发一条测试消息,能收到模型回复就说明通了。
4.3 模型选择:qwen-turbo、qwen-plus、qwen-max 怎么挑
百炼平台上的通义千问系列有好几个型号,OpenClaw 里最常用的三个是:
qwen-turbo:响应最快、价格最便宜,适合简单问答、闲聊、指令执行。但如果对话稍微复杂一点,推理质量会显得"飘"。qwen-plus:综合性价比之王,中文理解能力和逻辑能力明显比 turbo 强,日常使用我推荐这个。qwen-max:千问系列里能力最强的,复杂任务、长文本、需要深度推理的场景选它,代价是价格更高、响应稍慢。
个人建议:第一次跑通用 qwen-plus,等确认整个链路稳定了,再根据实际效果和账单调整模型。不要一上来就选 max,新手调试的时候会频繁重试,账单数字会跳得比较快。
5. 启动验证与微信渠道绑定:把 AI 助手装进口袋
模型配好之后,OpenClaw 本身已经能用了。只是默认情况下你还得通过浏览器访问管理面板来对话,这不符合"随手能用"的预期。所以这一节我们搞定两件事:验证服务确实对外可用,然后把微信渠道接进来。
5.1 浏览器访问 OpenClaw 管理面板
打开浏览器,输入 http://你的服务器公网IP:8531。第一次访问会让你设置管理员账号密码,这相当于给管理面板上了把锁。后续的模型配置、渠道管理、日志查看都在这个面板里操作。
如果你在浏览器里打不开,别急着怀疑命令敲错了,先按这个顺序排查:安全组有没有放行 8531 端口、容器有没有在运行、公网 IP 是不是写错了。大部分"打不开"都是安全组没配置,而不是 OpenClaw 本身的问题。
5.2 在面板里验证模型联通
找到模型配置相关的页面,发一条测试消息,比如"你好,请用一句话介绍你自己"。如果模型回复正常,说明从 OpenClaw 到百炼API 的全链路已经打通。这一步一定不要跳过,因为后面接微信一旦出问题,你就得回头确认到底是渠道问题还是模型问题。先在网页面板验证过,后面排查范围能缩小一半。
如果测试消息返回错误,多数是以下几类:401 说明 API Key 不对;404 或者模型名报错,说明填写的模型名跟百炼实际的模型ID不一致,去百炼控制台的模型列表里复制准确名称;网络超时则检查服务器到百炼服务的连通性。
5.3 微信绑定:扫码就能接,但有几条红线
OpenClaw 的渠道设置里有微信选项,点进去之后会生成一个二维码,用你想接管的微信号扫码确认,就能把微信跟 OpenClaw 绑定起来。我个人的建议是:专门用一个不重要的微信号来体验,别用主号,也别拿来做任何营销群发之类的事情。这类第三方接入方式属于灰色地带,你必须遵守平台规则,自己学习体验就好,不要给别人带来骚扰。
绑定成功后,给那个微信号发一条消息,OpenClaw 应该会回复。如果出现"能收到消息但不回复"的情况,大概率是模型调用环节出了问题,去容器日志里看详细报错,通常能找到原因。
6. 我踩过的坑和排查手册:照单抓药
最后这部分是我最想写的。OpenClaw 部署本身不算难,但网上的零散教程经常把一个简单问题讲得很玄。我把实操中遇到以及帮朋友排查过的高频问题整理出来,直接按症状找答案。
6.1 openclaw could not safely verify the wsl2 environment
这个报错很多人在 Windows 本地跑 OpenClaw 时遇到过,跟云服务器部署没有关系,但我几乎每次回答新手问题都会碰到,所以专门讲一下。它的意思是 OpenClaw 在启动时探测到你正运行在 WSL2 环境里,但无法安全确认这个环境的完整性,于是拒绝启动。
常见原因有三个:WSL 内核版本太旧;系统里同时存在 WSL1 和 WSL2 的发行版导致检测混乱;OpenClaw 的数据目录放在 /mnt/c/ 这种 Windows 文件系统挂载点上,跨文件系统读写导致权限探测异常。
解决思路也对应三点:先执行 wsl --update 升级 WSL 内核;把项目数据放到 WSL 自己的文件系统里,比如 ~/openclaw,不要放在 /mnt/c 下面;最后实在不行,干脆就在 Windows 上跑 Docker Desktop 的容器版 OpenClaw。不过说实话,如果你都遇到这个报错了,我的建议是直接转云服务器部署,一劳永逸。
6.2 API 报错 401、429、Model Not Found,分别代表什么
- 401 Unauthorized:API Key 无效,或者百炼平台没开通对应服务。检查一下 Key 有没有复制完整,前面有没有多余空格。
- 429 Too Many Requests:请求频率超过配额限制,或者账号免费额度用完了。解决办法是降低对话频率,或者去百炼控制台查看用量、升级配额。
- Model Not Found:配置里填的模型名跟百炼实际提供的模型 ID 不一致。不要凭记忆写,去百炼的模型广场页面直接复制准确名称。
这三种错误日志里都会写得很清楚,关键是养成看日志的习惯。OpenClaw 的日志本身就是排查工具,比任何猜测都靠谱。
6.3 微信能收到消息、但没有回复的怪问题
症状是:扫码之后,微信能收到 OpenClaw 发送的测试提示,但你自己发的消息石沉大海。这个问题的根源几乎都不在微信渠道本身,而在模型侧。最典型的情况是:OpenClaw 的渠道配置里虽然显示已连接,但没有正确加载模型配置,导致消息进来之后不知道往哪里送。
排查步骤我建议按顺序来:
- 先回 Web 面板发一条测试消息,确认模型配置没问题。
- 执行
docker logs --tail 100 openclaw,看消息进来后有没有报模型调用的错误。 - 检查百炼API 的配额是不是用完了,尤其是免费额度用完后没有充值,API 会直接拒绝请求。
我帮一个朋友排查过类似问题,最后发现是他把 API Key 填成了另一个旧项目的 Key,百炼平台早就删掉那个应用了。这种低级错误在日志里其实很明显,只是很多人不习惯看日志。
6.4 服务器重启后 OpenClaw 不在了
如果容器启动命令里加了 --restart always,正常情况下服务器重启后容器会自动拉起。没加的话,就只能手动执行:
bash复制docker start openclaw
为了避免以后再遇到,建议用 Docker Compose 管理 OpenClaw。写一个 docker-compose.yml,把端口、挂载目录、重启策略都写进去,以后一条 docker compose up -d 就全部搞定,升级也方便。下面是参考模板:
yaml复制services:
openclaw:
image: 你的镜像地址/openclaw:latest
container_name: openclaw
restart: always
ports:
- "8531:8531"
volumes:
- ~/.clawdbot:/app/.clawdbot
6.5 日志和备份:云服务器部署的最后一道保险
OpenClaw 在云服务器上跑,最怕的不是故障,而是数据丢失。配置、聊天记录、绑定的渠道信息都存在挂载目录里,也就是宿主机上的 ~/.clawdbot 目录。我的习惯是每周把这个目录打包备份一次,顺手传到对象存储里,成本几乎可以忽略。
日志方面,日常用 docker logs --tail 50 openclaw 看最近输出就够了。如果感觉事情不对劲,先把日志完整拉下来:
bash复制docker logs openclaw > openclaw.log
然后去翻里面有没有 ERROR、FATAL 之类的关键字。90% 的问题看日志都能定位,剩下的 10% 往往是配置漏了某个字段,这时候把日志和你的配置文件截图发到社区提问,别人也能更快帮你判断。
我个人实际跑下来最大的感受是:OpenClaw 这套东西,真正花时间的不是安装,而是把"模型怎么选、API 怎么配、渠道怎么接"这三件事想清楚。买错服务器配置、忘开安全组端口、API Key 抄错,这些才是新手最常见的卡点。最后再分享一个小技巧:去百炼控制台开一个消费告警,预算上限设成 10 块钱,这样哪天对话量突然暴涨,你能第一时间收到提示,不至于月底看到账单才傻眼。祝顺利跑通。
