1. 这不是“又一个AI部署教程”,而是一份给真实使用者的生存指南
“小白也能看懂的OpenClaw部署教程”——这个标题本身就很诚实,也藏着陷阱。它没说“5分钟跑通”,也没承诺“零报错”,而是把“看懂”放在了“部署”前面。为什么?因为OpenClaw不是npm install一个包就能在终端里打个hello world的玩具。它是一个运行在你本地或服务器上的、拥有真实系统权限、能调用浏览器、能读写文件、能连接你手机消息、甚至能控制你摄像头的 活体AI代理(Living Agent) 。它不只是一段代码,更像一个被你邀请进家门、还给了大门钥匙和工具箱的数字室友。
我从2026年1月项目刚爆火时就开始跟进,亲手在Mac Mini M4 Pro、Windows WSL2、阿里云轻量服务器、Docker Desktop和Lume虚拟机上部署过17次以上,踩过的坑足够填平一个小池塘。最深的一次,是某次配置失误导致OpenClaw在后台持续调用Ollama模型,一晚上把我的M4 Pro内存跑满到98%,风扇狂转像直升机起飞,而我浑然不觉——直到第二天早上发现电脑表面烫得没法放咖啡杯。这不是危言耸听,而是OpenClaw部署中一个极其真实的物理反馈:它真的会“干活”,而且干得非常卖力,哪怕你根本没给它派活。
所以,这篇教程的核心,不是教你如何让
openclaw gateway start
这条命令成功返回
✅ Gateway is running on http://localhost:18789
,而是帮你建立一套完整的“部署认知框架”:
知道每一步在做什么、为什么必须这么做、不做会有什么后果、以及当它出问题时,你该先看哪一行日志、查哪个配置项、关掉哪个进程。
它面向的“小白”,是指那些可能连
curl
和
npm
区别都说不清的朋友,但绝不意味着要牺牲专业性。相反,我会把所有技术细节掰开揉碎,用生活化的类比讲清楚——比如,把Docker沙箱比作厨房里的“独立操作台”,把Gateway的认证Token比作你家门禁卡的唯一编码,把上下文窗口膨胀比作微信聊天记录越积越多,最后连自己发过什么都找不到。
你不需要记住所有命令,但需要理解背后的逻辑。当你看到
openclaw : 无法将“openclaw”项识别为 cmdlet、函数、脚本文件或可运行程序的名
这个报错时,你不会慌张地去百度,而是立刻意识到:“哦,这是PATH环境变量没生效,要么是npm全局安装路径没加进去,要么是Shell配置文件没重载。” 这种“条件反射式”的判断力,才是这份教程真正想交付给你的东西。它不承诺让你成为专家,但能确保你在第一次部署失败时,不再对着黑乎乎的终端屏幕发呆,而是能有条不紊地打开日志、定位问题、解决问题。这才是“小白也能看懂”的终极含义:
看懂,是为了掌控;部署,是为了使用。
2. OpenClaw到底是什么?别被“AI助手”四个字骗了
在动手敲任何一条命令之前,我们必须先撕掉“AI助手”这个过于温情脉脉的标签,直面OpenClaw的真实身份。它不是一个会陪你聊天、帮你写周报的温柔小助手,而是一个 高度可编程、具备多层权限、运行在你设备上的自主代理系统(Autonomous Agent Runtime) 。它的核心价值,不在于它有多聪明,而在于它有多“听话”、多“能干”、以及——多“危险”。
2.1 从架构图看本质:它是一套精密的“数字工厂”
官方文档里那张微服务架构图,绝不是为了好看。它清晰地揭示了OpenClaw的工业级设计哲学:
-
消息渠道层(Channels) :这相当于工厂的“物流入口”。WhatsApp、Telegram、飞书、钉钉……这些不是简单的聊天软件,而是OpenClaw接入现实世界的10+个物理端口。每一个端口都对应着一套独立的API密钥、认证流程和数据格式。你配置飞书,就是在给工厂装上一条通往国内企业的专用货运专线;你接入iMessage,就是在苹果生态里打通了一条加密的私有隧道。
-
Gateway(网关) :这是整个工厂的“中央调度室”,运行在
localhost:18789。它不处理任何AI推理,只做三件事: 路由、认证、审计 。所有来自各个渠道的消息,都必须先经过它登记、验票、分派;所有Agent执行完任务后的结果,也必须回传到这里汇总、存档。你可以把它想象成机场的塔台,它不负责开飞机,但每一架飞机的起飞、降落、航线,都必须听它的指挥。这也是为什么18789端口是绝对的核心——一旦它挂了,整个系统就彻底失联,变成一堆散落的零件。 -
Agent层(智能引擎) :这才是大家最关心的“大脑”。但它不是单一的大脑,而是一个可插拔的“引擎舱”。你可以给它装Claude Opus(性能怪兽,但油费惊人),也可以装Gemini Flash(省油小钢炮,日常通勤够用),甚至可以装本地Ollama的Qwen2.5-Coder(完全免费,但需要你自己的硬件来当加油站)。关键点在于: Agent本身不存储数据,也不直接操作文件,它只负责“思考”和“下指令”。 它的每一次“思考”,都会产生一个精确的、可执行的“工单”(Task),然后把这个工单交给下一层去完成。
-
Skills层(技能工具包) :这才是OpenClaw真正“能干”的地方,也是它最危险的地方。Skills不是什么高大上的AI能力,就是一段段用JavaScript/TypeScript写的、能调用系统命令的脚本。
shell.exec("rm -rf /")?它可以;browser.navigate("https://mybank.com")?它可以;file.read("/Users/me/Documents/passwords.txt")?它也可以。官方提供的100+预设Skills,覆盖了从定时任务、Webhook回调、到浏览器自动化、文件管理的方方面面。你安装一个第三方Skill,本质上就是在工厂里引入了一个外部承包商,你必须100%信任他不会偷走你的原材料。 -
Nodes层(设备节点) :这是OpenClaw最令人不安,也最具潜力的部分。它允许你在iOS或Android手机上运行一个轻量级客户端,这个客户端能暴露你设备的 真实能力 :摄像头实时画面、GPS地理位置、屏幕录制流、甚至麦克风音频。这意味着,你的AI代理不仅能“说”,还能“看”、能“听”、能“定位”。一个配置好的OpenClaw,理论上可以成为一个7×24小时的私人安保系统——当然,前提是你的手机没丢,也没被恶意App劫持。
所以,当你决定部署OpenClaw时,你不是在安装一个软件,而是在你自己的数字领地上,亲手搭建一座功能完备、权限分明、但也暗藏风险的“AI工厂”。理解了这个本质,你才会明白,为什么安全配置不是可选项,而是部署的第一步;为什么
auth: "none"
模式被官方永久移除,因为它等同于把工厂大门敞开,还把保安都辞退了。
2.2 它能做什么?三个真实场景,告诉你它不是玩具
光说概念太虚,我们来看三个我亲自验证过的、脱离了“Hello World”的真实场景:
场景一:全自动的“家庭健康管家”(Mac Mini + Ollama + 飞书)
我在Mac Mini上部署了OpenClaw,并接入飞书。配置了一个名为
health-check
的自定义Skill,它每天早上8点自动执行:
-
调用
curl请求我家智能血压计的局域网API,获取最新数据; - 将数据喂给本地Ollama的Qwen2.5-Coder模型,让它分析趋势(“过去一周收缩压平均值上升了5mmHg,建议复查”);
- 将分析结果,连同原始数据图表,通过飞书机器人,精准推送到我和家人的飞书群。
整个过程无需人工干预,数据不出内网,模型在本地运行,隐私零泄露。这已经超出了“助手”的范畴,是一个嵌入你生活基础设施的、可信赖的自动化节点。
场景二:跨平台的“信息聚合中枢”(Windows WSL2 + Telegram + Discord)
我有一个Discord技术群,一个Telegram读书群。以前,我需要在两个App之间来回切换,手动复制粘贴重要信息。现在,我配置OpenClaw同时监听这两个渠道。当Discord群里有人发了一个GitHub链接,OpenClaw会自动:
-
用
browserSkill打开链接,提取README内容; -
用
llmSkill总结核心功能; - 再将摘要和原始链接,以结构化卡片的形式,转发到Telegram读书群。
它不是简单地“转发”,而是在不同平台间进行了一次轻量级的“信息加工”和“语义适配”。这背后是Channels层的统一抽象和Skills层的灵活组合。
场景三:高危操作的“人工确认闸门”(Docker + 本地模型 + Shell Skill)
我写了一个
cleanup-old-files
的Skill,功能是清理
/tmp
目录下超过7天的文件。这是一个典型的“破坏性操作”。在部署时,我强制启用了
exec.approvals.set
策略,并将此Skill的权限设置为
"approval": "always"
。这意味着,每当这个Skill被触发,OpenClaw会立刻暂停,在飞书里给我发一条带详细参数(要删哪些文件、路径是什么)的确认消息。我必须手动点击“批准”,它才会执行
rm
命令。这道“人工确认闸门”,是防止AI因幻觉或错误推理而酿成大祸的最后一道防线。没有它,一次配置失误就可能让你的整个
/home
目录消失。
这三个场景,共同指向一个结论:OpenClaw的价值,不在于它能生成多么华丽的文本,而在于它能作为一个 可靠的、可审计的、可中断的自动化执行引擎 ,把你分散在各个平台、各种设备上的数字生活,编织成一张有逻辑、有反馈、有边界的智能网络。部署它,就是为你自己的数字世界,安装一套操作系统级别的“神经中枢”。
3. 部署前的生死线:环境准备与安全基线
很多新手在
curl | bash
之后,看到终端里跳出一串绿色的
✅
就以为大功告成,兴冲冲地去配置飞书,结果半小时后发现自己的API Key被泄露,或者电脑开始莫名变慢。这些悲剧,99%都源于部署前的“环境准备”环节被草率跳过。这一节,我要用最直白的语言,告诉你哪些事是“必须做”,哪些是“做了等于没做”,哪些是“不做就等着哭”。
3.1 硬件与系统:别拿老爷机挑战AI工厂
OpenClaw不是网页应用,它对底层资源有实实在在的需求。官方文档里写的“2核2G”是理论最低值,就像汽车说明书上写的“百公里油耗5L”一样,那是理想路况下的实验室数据。
-
CPU :OpenClaw的Gateway本身很轻量,但Agent层的LLM推理是CPU大户。如果你打算用本地模型(Ollama),那么CPU的单核性能比核心数更重要。实测下来,一颗Intel i5-8250U(四核八线程,基础频率1.6GHz)在运行Qwen2.5-Coder:7B时,推理速度只有5 tokens/秒,卡顿感非常明显。而一颗M4芯片(单核性能提升约40%),同样模型能达到12 tokens/秒,体验流畅。所以, 不要迷信核心数,要看单核睿频和实际跑分。 对于纯API调用(不跑本地模型)的用户,一颗现代的i3或Ryzen 3就足够了。
-
内存(RAM) :这是最容易被低估的资源。Gateway进程本身占用约300MB,但Ollama加载一个32B参数的模型,轻松吃掉6GB内存。再加上Node.js的V8引擎、浏览器渲染进程(如果你开了Dashboard)、以及你自己的其他应用, 8GB是绝对的起步线,16GB是舒适区,32GB是为未来留的余量。 我曾在一个16GB内存的机器上,因为同时开了VS Code、Chrome和OpenClaw,导致系统频繁触发Swap,整个UI变得像PPT一样卡顿。解决方法?不是升级OpenClaw,而是关掉一个Chrome标签页。
-
磁盘 :10GB的“最低要求”只够放代码和日志。Ollama的模型文件动辄几个GB,一个Qwen2.5-Coder:32B就占了22GB。再加上OpenClaw默认会将所有对话历史、工具输出、甚至截图都持久化存储,一个月下来,
~/.openclaw/storage目录轻松突破50GB。 强烈建议,为OpenClaw单独准备一块SSD,并且预留至少100GB的可用空间。 如果你用的是NAS,确保它的Samba/NFS协议版本足够新,否则文件IO会成为瓶颈。 -
操作系统 :官方支持macOS、Linux和Windows (WSL2)。这里有个血泪教训: 永远不要在原生Windows(非WSL2)上部署。 原因很简单:Windows的文件权限模型、进程管理机制和网络栈,与OpenClaw深度依赖的Unix-like环境存在根本性差异。你会遇到无数奇奇怪怪的问题,比如
openclaw gateway start命令执行后进程立刻退出、shell.exec无法正确解析路径、甚至WebSocket连接不稳定。WSL2是微软官方提供的Linux子系统,它完美模拟了Linux内核,是Windows用户的唯一正解。至于macOS,Apple Silicon(M1/M2/M3/M4)是首选,因为Ollama对ARM64的优化远超Intel x86_64。
提示:在开始任何部署前,请务必在终端里运行以下命令,检查你的环境是否“健康”:
# 检查Node.js版本(必须>=22.0.0) node --version # 检查内存(以GB为单位,确保大于8) free -h | grep Mem # 检查磁盘空间(确保/home或/Users目录有足够空闲) df -h ~ # 检查Swap(如果内存<16GB,强烈建议创建4GB Swap) swapon --show
3.2 安全基线:部署前必须完成的五道“防火墙”
OpenClaw的安全形势,用“严峻”二字形容都显得轻描淡写。CVE-2026-25253这个漏洞,其危害性堪比在自家大门上装了一个公开的、无需钥匙的电子锁。因此,安全配置不是部署完成后的“锦上添花”,而是部署启动前的“生死线”。以下五件事,必须在你输入第一条
openclaw
命令之前完成。
第一道防火墙:永远不要以root身份运行
这是Unix/Linux世界里最古老、也最重要的安全铁律。OpenClaw的官方Docker镜像默认以UID 1000的非root用户运行,这是正确的。但如果你选择
npm install -g
或
curl | bash
方式,它默认会尝试以当前用户身份运行。如果你当前就是root,那整个Gateway进程就拥有了最高权限。一个被攻破的Gateway,可以直接执行
rm -rf /
。解决方案:创建一个专用的、无sudo权限的系统用户。
# 创建一个叫 openclaw 的用户
sudo adduser openclaw
# 切换到该用户
su - openclaw
# 后续所有操作都在这个用户下进行
第二道防火墙:绑定到loopback,禁止公网暴露
gateway.bind: "loopback"
这行配置,是OpenClaw安全配置的基石。它的意思是,Gateway只监听
127.0.0.1:18789
,即只接受来自本机的连接。这意味着,即使你的电脑连在公共WiFi上,黑客也无法从外网直接访问你的OpenClaw控制台。这是最简单、最有效、也最容易被忽略的防护。如果你需要从另一台设备(比如手机)访问Dashboard,正确的做法是配置一个反向代理(如Nginx),并为其加上强密码和IP白名单,而不是把
0.0.0.0:18789
直接暴露出去。
第三道防火墙:强制启用Token认证
auth: "none"
模式已在v2026.1.29版本中被永久移除,这是个好消息。但你仍需确保你的配置文件里明确写了:
{
"gateway": {
"auth": "token"
}
}
这个Token,是你访问Dashboard、调用API的唯一凭证。它不像密码那样容易被暴力破解,但一旦泄露(比如包含在URL里被浏览器历史记录),就等同于交出了管理员权限。因此,
永远不要在任何公共场合、聊天记录、或Git仓库里分享你的完整Dashboard URL。
正确的做法是,只分享
http://localhost:18789
,然后让用户自己去
openclaw dashboard
命令里获取Token。
第四道防火墙:为API提供商设置硬性支出上限 这是成本控制,也是安全控制。OpenClaw本身免费,但它的“燃料”——LLM API——是按Token计费的。一个配置不当的“心跳”任务,一晚上就能烧掉你半个月的工资。因此,在你配置Anthropic、OpenAI或Google Gemini的API Key时, 必须登录到对应服务商的控制台,为这个Key设置一个严格的月度支出上限。 比如,你预计每月花费30美金,那就把上限设为35美金。一旦达到,API会自动拒绝所有请求,OpenClaw会报错,但你的钱包保住了。这比事后看账单再懊悔要强一万倍。
第五道防火墙:初始化时就运行安全审计
在你完成
openclaw onboard
配置向导,并首次启动Gateway后,
第一件事不是去配置飞书,而是立刻运行:
openclaw security audit --deep
这个命令会扫描你的整个部署环境:检查
openclaw.json
配置是否有高危项(比如
dmScope: "main"
)、检查文件权限是否过于宽松、检查是否有未签名的第三方Skill、甚至会尝试探测Gateway是否存在已知的漏洞模式。它会给你一份详细的报告,告诉你哪里有风险,以及如何修复。
把它当作部署完成后的“出厂质检”,没有这份报告,你的OpenClaw就不算真正“上线”。
这五道防火墙,构成了OpenClaw部署的“安全基线”。它们不复杂,但缺一不可。跳过其中任何一道,都像是开着一辆没有刹车、没有安全带、轮胎还是二手的车,上高速公路。你可以侥幸开一段,但风险是100%存在的。
4. 四种主流部署方式详解:从“尝鲜”到“生产”的完整路径
网上充斥着各种“一键部署”、“三分钟搞定”的教程,它们像快餐一样诱人,却往往忽略了不同用户的真实需求。一个只想在周末试试AI能不能帮自己写邮件的普通用户,和一个要在公司内部部署AI客服的IT管理员,他们的“部署”完全是两回事。因此,我将OpenClaw的部署方式,严格划分为四种类型,每一种都对应着不同的目标、成本、复杂度和适用场景。我会告诉你,哪种方式最适合你,以及每种方式下,那些被教程刻意忽略的关键细节。
4.1 方式一:本地一键脚本(适合“尝鲜者”)
这是为“小白”量身定制的入门路径。它的目标只有一个:
在5分钟内,让你看到
http://localhost:18789
这个页面,并能和AI说上第一句话。
它牺牲了安全性、可维护性和长期稳定性,换取了极致的便捷性。
核心命令:
curl -fsSL https://openclaw.ai/install.sh | bash
它到底做了什么? 这行命令远不止是下载和安装。它会:
- 检查你的系统,自动安装缺失的依赖(如Node.js 22+、Git);
- 从GitHub拉取最新的OpenClaw源码;
-
使用
pnpm安装所有Node.js依赖; - 构建前端UI;
-
在
~/.openclaw目录下初始化一个默认配置; - 最后,它会尝试启动Gateway。
为什么它“快”,但也“脆弱”?
因为它把所有东西都塞进了你的主用户目录,混杂在你的其他开发项目里。
node_modules
可能有几百MB,
storage
目录会随着使用不断膨胀,最终你的
~/
目录会变得一团糟。而且,它默认的配置是“最简模式”,
auth
可能是
"token"
,但
dmScope
很可能是不安全的
"main"
。
实操心得与避坑指南:
-
坑一:
curl | bash被拦截。 很多安全意识强的用户会禁用这种模式。此时,你应该手动下载脚本,审查后再执行:curl -fsSL https://openclaw.ai/install.sh -o install.sh # 用vim或nano打开install.sh,快速浏览一遍,确认没有可疑的curl外链或rm命令 bash install.sh -
坑二:
openclaw命令找不到。 这是最常见的报错。原因在于npm install -g安装的全局命令,其路径(通常是/usr/local/bin)可能不在你的$PATH环境变量里。解决方法是:# 查看npm的全局bin路径 npm config get prefix # 通常输出是 /usr/local,那么命令就在 /usr/local/bin # 将其加入PATH(以zsh为例,编辑 ~/.zshrc) echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.zshrc source ~/.zshrc -
坑三:Dashboard打不开,显示“Connection refused”。
这通常是因为Gateway没起来,或者端口被占用了。先检查:
# 查看18789端口是否被占用 lsof -i :18789 # 如果有进程占用了,kill掉它 kill -9 <PID> # 然后手动启动Gateway openclaw gateway start
一句话总结: 这是“试用装”,适合好奇心驱动的探索者。用它来感受OpenClaw的交互逻辑、UI风格和基本功能。一旦你确定要长期使用,就必须立刻迁移到下面更稳健的方式。
4.2 方式二:Docker容器化(适合“稳定使用者”)
如果你已经过了“尝鲜”阶段,希望OpenClaw能像一个真正的服务一样,7×24小时稳定运行,不干扰你的开发环境,那么Docker是你的不二之选。它用“隔离”解决了所有“一键脚本”带来的混乱问题。
核心流程:
# 1. 克隆官方仓库
git clone https://github.com/openclaw/openclaw.git
cd openclaw
# 2. 运行一键脚本(它会构建镜像并启动)
./docker-setup.sh
它到底做了什么?
./docker-setup.sh
是一个精心编排的Shell脚本,它会:
-
使用
Dockerfile构建一个纯净的、基于Debian Bookworm的OpenClaw镜像; -
启动一个
docker-compose环境,其中包含openclaw-gateway(核心服务)和openclaw-cli(命令行工具)两个容器; -
自动运行
openclaw onboard配置向导,并将生成的配置持久化到一个名为openclaw_home的Docker Volume中; -
最终,Gateway会在
http://127.0.0.1:18789上运行,所有数据都保存在这个Volume里,与你的宿主机文件系统完全隔离。
为什么它是“稳定之选”?
因为Docker提供了一套完美的“沙箱”机制。OpenClaw的所有文件、进程、网络连接,都被限制在这个容器里。它无法随意读写你宿主机的
/home
目录,也无法轻易逃逸到宿主机上执行命令。即使它崩溃了,你也只需要
docker-compose down && docker-compose up -d
,就能瞬间恢复到一个干净的状态。
实操心得与避坑指南:
-
坑一:Docker Desktop没启动或没权限。
在macOS和Windows上,Docker Desktop是一个图形化应用,必须先启动它。在Linux上,则需要将当前用户加入
docker组:sudo usermod -aG docker $USER # 然后注销并重新登录 -
坑二:
docker-setup.sh报错,提示Permission denied。 这是因为脚本没有可执行权限。解决方法:chmod +x docker-setup.sh ./docker-setup.sh -
坑三:配置向导卡在“选择渠道”步骤。
这通常是因为Docker容器内的网络无法访问外网(比如你的公司内网有代理)。你需要编辑
docker-compose.yml,为openclaw-gateway服务添加代理环境变量:environment: - HTTP_PROXY=http://your-proxy:8080 - HTTPS_PROXY=http://your-proxy:8080
一句话总结: Docker是“精装房”,它为你提供了开箱即用的稳定性、隔离性和可移植性。对于绝大多数个人用户和中小团队,这是最推荐、最省心的部署方式。它让你能专注于“用好”OpenClaw,而不是“修好”OpenClaw。
4.3 方式三:云服务器部署(适合“远程工作者”)
如果你没有一台可以7×24小时开机的Mac Mini,或者你希望在出差时,用手机也能随时访问你的AI助手,那么租用一台云服务器是最佳方案。它把你的OpenClaw,从“本地服务”变成了“云端服务”。
核心选择:
- 国内用户:阿里云轻量应用服务器(68元/年起) 。它的优势在于“预装镜像”,你几乎不用敲任何命令,点点鼠标就能完成部署。它还内置了针对国内网络的优化,飞书、钉钉的接入延迟极低。
- 海外用户:DigitalOcean 1-Click Deploy(5-12美金/月) 。它的优势在于全球节点多,你可以选择离你最近的数据中心,获得最佳的访问速度。
它到底做了什么? 以阿里云为例,当你选择“OpenClaw应用镜像”后,云平台会:
- 自动为你创建一台2核2G的Linux虚拟机;
- 在这台虚拟机上,预装好Node.js 22+、Git、以及最新版的OpenClaw;
-
预配置好
openclaw.json,并为你生成一个初始的Token; -
最后,它会自动放行
18789端口的防火墙规则。
为什么它“方便”,但也“有代价”?
方便是显而易见的:你不需要管理硬件,不需要担心散热和电费。但代价是:
你失去了对底层环境的完全控制权。
云服务商的预装镜像,其安全加固策略、日志轮转规则、甚至Ollama的版本,都是他们定的。你无法像在本地Docker里那样,自由地修改
Dockerfile
或
docker-compose.yml
。更重要的是,
你必须承担起“网络安全”的全部责任。
云服务器的IP是公开的,如果你忘了配置
gateway.bind: "loopback"
,或者没给Dashboard加密码,那么全世界都能访问你的AI助手,窃取你的API Key。
实操心得与避坑指南:
-
坑一:SSH连接不上。
阿里云和腾讯云默认禁用root密码登录,只允许密钥登录。你必须在创建服务器时,就上传或生成一对SSH密钥,并妥善保管私钥文件(
.pem)。 -
坑二:Dashboard能打开,但无法接入飞书。
这是因为飞书的Webhook回调地址,必须是一个公网可访问的HTTPS地址。而
http://<你的服务器IP>:18789是HTTP,且端口非标准。解决方案是:在云服务器上部署一个Nginx反向代理,并申请一个免费的Let's Encrypt SSL证书,将https://yourdomain.com/webhook代理到http://127.0.0.1:18789。 - 坑三:费用失控。 云服务器本身的费用只是冰山一角。更大的开支来自LLM API。一个在云上24小时运行的OpenClaw,其“待机”状态下的Token消耗,可能比你在家用Mac Mini还要高,因为云服务器的网络延迟更低,心跳任务执行得更“勤快”。 务必!务必!在云服务商的控制台里,为你的OpenClaw实例设置一个严格的月度预算告警。
一句话总结: 云服务器是“公寓”,它提供了便利和可访问性,但你需要为它的“物业费”(安全、成本、维护)付出持续的努力。它适合那些需要随时随地、跨设备访问AI助手的用户。
4.4 方式四:macOS虚拟机部署(Lume)(适合“iMessage集成者”)
这是最特殊、也最“硬核”的一种方式。它的唯一目的,就是为了实现一个在其他任何方式下都无法完美达成的功能: 无缝、原生地接入Apple的iMessage。 因为iMessage的API是苹果严格封闭的,只有在真实的macOS系统上,才能通过BlueBubbles这样的开源项目,将其桥接到OpenClaw。
核心流程:
# 1. 安装Lume(一个专为macOS设计的轻量级虚拟机管理器)
curl -fsSL https://lume.dev/install.sh | bash
# 2. 创建一个macOS虚拟机
lume create openclaw --os macos --ipsw latest
# 3. 在VM里完成macOS设置,启用远程登录(SSH)
# 4. SSH进入VM,安装OpenClaw
ssh user@<vm-ip>
npm install -g openclaw@latest
openclaw onboard --install-daemon
它到底做了什么? Lume利用macOS的Hypervisor.framework,在你的M系列Mac上创建一个完全隔离的、运行着真实macOS系统的虚拟机。这个VM拥有自己独立的网络、存储和用户账户。你在VM里安装的OpenClaw,和你宿主机上的任何东西都毫无关系。它就是一个“嵌套”的macOS系统。
为什么它“强大”,但也“昂贵”? 强大之处在于,它让你在一台Mac上,拥有了两个完全独立的、可同时运行的macOS环境。你可以把宿主机留给日常工作,把VM专门用来运行OpenClaw和BlueBubbles,互不干扰。昂贵之处在于,它对硬件要求极高。一个运行macOS Sequoia的VM,至少需要8GB内存和60GB磁盘空间。这意味着,你的宿主机必须是M4 Pro或更高配置,否则VM会卡顿得无法忍受。
实操心得与避坑指南:
-
坑一:
lume create失败,提示“Failed to download IPSW”。 IPSW是苹果的macOS系统安装包,体积巨大(>10GB),且受CDN限速。你需要耐心等待,或者手动下载后放到~/.lume/cache目录下。 - 坑二:BlueBubbles无法连接到iMessage。 这通常是因为VM里的macOS没有正确配置iMessage。你必须在VM里,用你的Apple ID登录iMessage,并确保“iMessage”和“FaceTime”都已开启。BlueBubbles只是一个桥梁,它无法替代你完成苹果账号的授权流程。
-
坑三:VM的性能问题。
Lume默认会给VM分配2核CPU和4GB内存,这对于OpenClaw来说是不够的。你需要编辑VM的配置文件(
~/.lume/vms/openclaw/config.json),将cpus增加到4,memory增加到8192(MB)。
一句话总结: Lume是“私人定制的保险柜”,它只为一个特定的、高价值的目标服务:iMessage集成。如果你不需要这个功能,那么它对你而言就是过度设计。但如果你需要,它就是目前唯一可行的、安全的解决方案。
5. 核心配置与实操:从
openclaw.json
到第一个飞书机器人
完成了部署,只是万里长征的第一步。真正的挑战,始于你打开
~/.openclaw/openclaw.json
这个文件。这个看似简单的JSON配置文件,是OpenClaw的“灵魂”,它决定了你的AI助手有多聪明、多听话、多安全。本节,我将带你逐行解读这个文件,并手把手教你,如何从零开始,配置一个能接收飞书消息、并用本地模型回答问题的完整机器人。
5.1
openclaw.json
深度解析:每一行代码背后的权力
openclaw.json
不是一份静态的说明书,而是一份动态的“权力契约”。它规定了OpenClaw的每一个组件,能做什么,不能做什么。我们以一个经过安全加固的、生产环境可用的配置为例,逐行拆解:
{
"gateway": {
"bind": "loopback", // 🔑 权力一:只允许本机访问。这是安全的基石。
"port": 18789, // 🔑 权力二:指定监听端口。你可以改成18790,但必须同步更新防火墙规则。
"auth": "token", // 🔑 权力三:强制Token认证。没有它,你的Dashboard就是裸奔。
"cors": ["http://localhost:3000"] // 🔑 权力四:CORS白名单。只允许来自localhost:3000的前端调用API。
},
"agents": {
"defaults": {
"model": "ollama/qwen2.5-coder:32b", // 🔑 权力五:指定默认AI模型。这里是本地Ollama的32B模型。
"providers": {
"ollama": {
"baseUrl": "http://host.docker.internal:11434/v1" // 🔑 权力六:Ollama的地址。注意!在Docker里,不能写localhost,必须写host.docker.internal。
}
}
}
403

被折叠的 条评论
为什么被折叠?



