资讯详情

OpenClaw(AI龙虾)自部署教程:10分钟用Docker+WSL2搭建个人AI助手

📅 2026/9/23 2:36:18 | 华诺云谱 👁 阅读
OpenClaw(AI龙虾)自部署教程:10分钟用Docker+WSL2搭建个人AI助手
说实话第一次听到“AI龙虾”这个名字的时候我也愣了一下后来才知道社区里都在这么叫OpenClaw它早先叫Clawdbot被戏称为Claude的“爪子机器人”再加上Claw这个词天生就让人联想到龙虾钳子叫着叫着就成龙虾了。这个项目的本质是一个可以跑在你自家电脑或服务器上的AI个人助手你可以把它接进微信、飞书、Telegram这些日常聊天软件然后用大模型帮你在聊天框里直接完成查资料、写文案、管日程、跑定时任务这些事情。它和网页版AI最大的区别在于可控——模型自己配、数据自己管、跑在自己机器上。这篇教程就是写给完全没碰过Docker、没碰过Linux的小白的。我会把步骤拆到最细尽量做到“照着抄就能跑起来”同时把每一步背后的原因讲清楚这样你后面自己改配置的时候也不至于抓瞎。老规矩新手最容易踩的几个坑我也会提前指出来。如果你手里有一台Windows电脑并且已经准备好一个大模型的API Key那“10分钟把服务跑起来”这个目标真不是吹的。这篇内容适合所有想折腾自部署AI助手的玩家、想给团队搭一个内部助理的技术同学以及纯粹好奇“AI Agent到底能干什么”的普通用户。1. 先别急着动手搞懂AI龙虾OpenClaw到底是干啥的1.1 从Clawdbot到OpenClaw名字背后的来头OpenClaw这个项目的演变其实挺能代表这两年AI开源社区的风向。它早期在圈子里流传的名字是“Clawdbot”你可以理解成“Claude Robot”的玩法想做的事很简单把大模型变成一个能随时喊得动的机器人。当时很多人对AI助手的想象还停留在网页聊天框里Clawdbot则直接把入口搬到了微信、飞书、Telegram这些大家每天都在用的地方。后来项目功能越加越多就不再甘心只做一个“聊天机器人”了改名OpenClaw算是划清界限我要做的是一个开放的个人AI助手平台。社区里顺口叫它“AI龙虾”我倒觉得挺贴切因为OpenClaw真的像一只多钳子的龙虾——一只钳子抓住微信一只钳子抓住飞书另一只抓住定时任务所有钳子都听中间那个“大脑”指挥。这个“大脑”就是你自己配置的大模型API。1.2 消息中枢架构为什么它比普通AI应用好用我见过不少第一次玩OpenClaw的人上来就把它当成一个web聊天工具结果部署完发现界面上什么都没有就一个配置文件一脸懵。这里我建议你先建立一个认知OpenClaw的本质是“消息中枢”不是“聊天网页”。打个比方OpenClaw就像一个私人助理手里拿着好几部对讲机微信、飞书、Telegram、Web背后坐着一位聪明的大脑大模型。你的工作就是在任何一部对讲机里喊话助理听到后把话转述给大脑再把大脑的回答回传给你。这个助理还自带一个日程本可以按时定点帮你干活比如每天早上9点把当天的待办事项发到飞书群。这种“消息中枢”架构带来的好处是实实在在的不用再专门打开AI网页微信里就能直接指挥它多个消息渠道共享同一个记忆和配置消息不丢、上下文能接上所有密钥、数据、聊天记录都在自己的机器上隐私边界自己掌控可以加定时任务、自动化流程让AI从“应答者”变成“执行者”所以我一直觉得OpenClaw这类项目的真正价值不在于“又多了一个聊天机器人”而在于它把AI从“你主动去访问的工具”变成了“随时在你身边的助理”。1.3 和同类方案比OpenClaw赢在哪儿很多人会问OpenClaw和WorkBuddy这类工具怎么选。我个人的使用感受是WorkBuddy更偏“工作流编排”适合团队内部把多个系统串起来做流程自动化门槛稍高OpenClaw更聚焦“个人助理”场景消息渠道聚合和定时任务这两块做得很顺手部署门槛也低不少。我整理了一个对比方便你根据自己的情况选对比维度OpenClawAI龙虾WorkBuddy直接用网页版AI部署难度低Docker一键拉起中偏企业配置无注册即用消息渠道接入微信、飞书、Telegram、Web等偏工作流/API触发无定时任务支持内置计划任务支持但配置复杂不支持数据隐私自托管数据自己掌控自托管第三方平台适合场景个人助理、群聊机器人企业流程自动化临时问答如果你只是想自己玩、让AI帮忙管管日常消息和任务OpenClaw目前是成本最低的选择之一。如果你想在公司里做跨系统自动化WorkBuddy那类工具可能要更对口一些。2. 部署前5分钟准备清单少走一半弯路2.1 先看看手里的电脑能不能跑OpenClaw本身对硬件的要求其实不高因为它主要是个“管道工”把消息从渠道转发给大模型API真正吃性能的是远端的大模型服务。不过本地要跑Docker和多个服务进程还是建议你的电脑满足这个底线CPU双核以上四核更稳妥内存8GB起步16GB能跑得很从容硬盘至少留出10GB空间给镜像和日志系统Windows 10/11、主流Linux发行版、macOS都能跑需要注意Windows下面的部署我强烈建议走WSL2方案而不是直接在Windows里裸装Docker。原因后面会细说简单讲就是WSL2的Linux内核和Docker兼容性更好很多镜像直接在Linux环境下跑才不会有奇怪问题。如果你手里有一台闲置的Linux服务器哪怕是云上的轻量服务器那部署会更顺畅。但如果只有Windows电脑也完全没问题按第3章的流程走就行。2.2 准备一个大模型API Key选哪个最省心OpenClaw只是“中枢”真正的“大脑”是大模型API。所以部署前你必须先准备好一个能调用的大模型API Key。常见的选择有三类Anthropic Claude系列OpenClaw早期最适配的模型Agent能力很强代码和长文本理解表现出色OpenAI兼容接口很多国产模型比如千问、DeepSeek、智谱都提供OpenAI兼容的API配置起来特别方便魔塔ModelScope等平台部分社区用户会从这里对接开源模型像千问就是用得很广的一类我个人的建议是新手第一次跑通流程优先选一个API兼容性好、文档全、额度友好的模型。不要一上来就追求最强模型先用最顺手的把整个链路跑通再慢慢换模型对比效果。这里必须强调一句API Key相当于你钱包的钥匙千万别随手贴到公开群里也别写进会同步到GitHub的配置文件里。最好的做法是通过环境变量或OpenClaw配置文件的密钥引用功能加载最大程度降低泄露风险。2.3 Windows用户必看WSL2环境到底要咋整Windows上部署OpenClaw绕不开WSL2Windows Subsystem for Linux 2。它本质上是Windows里内置的一个轻量Linux虚拟机好处是启动快、内存动态分配而且和Windows文件系统能互通。Docker Desktop在Windows上跑容器底层就是依赖WSL2。很多新手在“could not safely verify the WSL2 environment”这一步卡住其实大多数原因是WSL2内核太旧、没更新到最新或者Windows虚拟化功能没打开。所以第3章我会专门拆解怎么把WSL2环境一次搞定。如果你之前完全没接触过WSL2别慌你可以把它理解成Windows官方给你塞进电脑的一个“Linux小盒子”你后续所有命令都在这个盒子里执行和Windows本体互不干扰。2.4 部署方式选哪个Docker还是源码OpenClaw的部署方式常见的有Docker容器部署和源码直接运行两种。对于小白我闭眼推荐Docker方案原因很简单依赖环境已经被镜像打包好了不需要自己装Python、Node.js那一大堆东西升级、回滚、卸载都干净利落不会把系统搞得一团糟日志管理、重启策略、端口映射都是现成的源码部署也有它的价值适合想改源码、深度定制的玩家。但如果你只是想尽快把AI龙虾跑起来直接Docker不要犹豫。等跑通之后想折腾源码再折腾那会儿你对整个项目结构的理解也更深了。3. Windows 10分钟喂饭级实操从WSL2到Docker一条龙3.1 第一步安装WSL2并装好Ubuntu在Windows上安装WSL2现在非常简单不需要手动下载什么安装包。你只需要以管理员身份打开PowerShell或Windows Terminal然后执行一条命令wsl --install这条命令会自动帮你启用需要的Windows功能、安装WSL2内核并默认安装Ubuntu发行版。装完之后系统会提示你重启电脑按要求重启就行。重启之后打开开始菜单里的Ubuntu图标第一次启动会让你设置Linux用户名和密码。这个用户名和密码只影响WSL里的Linux系统和Windows登录账号没关系你设置一个自己记得住的就行。进到Linux终端后先检查一下WSL版本是不是2wsl -l -v如果看到Ubuntu那行显示的版本是2就说明WSL2已经正常了。如果显示的是1执行wsl --set-version Ubuntu 2升级一下。另外建议顺手更新一下系统包sudo apt update sudo apt upgrade -y这一步看着不起眼但能避免后面很多依赖相关的奇怪报错。3.2 第二步安装Docker Desktop并启用WSL2后端去Docker官网下载Docker Desktop for Windows安装包大概几百MB安装过程一路下一步就行。装完启动Docker Desktop第一次启动会提示你登录Docker账号直接跳过或注册一个免费账号都行。关键一步来了打开Docker Desktop的Settings找到Resources - WSL Integration确认“Enable integration with my default WSL distro”是打开的然后在列表里勾选你刚才装的Ubuntu。这一步不做的话Docker命令在WSL里可能会报“cannot connect to the Docker daemon”。设置完之后回到Ubuntu终端验证一下Docker是否可用docker --version docker run hello-world能正常输出版本号、能跑通hello-world说明Docker环境已经OK了。到这一步你已经完成了整条链路里最麻烦的环节后面基本就是复制粘贴了。3.3 第三步拉取OpenClaw镜像并启动容器先说明一点具体镜像名和启动参数请以你所用OpenClaw版本的官方文档项目仓库README为准。下面给的是通用且安全的标准Docker启动模式思路对所有版本都适用docker pull openclaw/openclaw:latest拉取镜像需要看网络情况可能等几分钟。拉完之后创建配置文件目录并启动容器mkdir -p ~/openclaw/config docker run -d \ --name openclaw \ --restart always \ -p 18686:18686 \ -v ~/openclaw/config:/app/config \ -e OPENCLAW_API_KEY你的大模型APIKey \ openclaw/openclaw:latest这里每个参数我都解释一下方便你后面自己改-d后台运行不占用当前终端--name openclaw给容器起个名字后面管理都靠它--restart always机器重启或容器异常退出后自动拉起省心-p 18686:18686把容器里的18686端口映射到本机Web管理界面从这里访问-v ~/openclaw/config:/app/config把配置文件目录挂载到宿主机方便你直接编辑配置、备份数据-e OPENCLAW_API_KEY...通过环境变量传入大模型API Key比写死在配置文件里稍微安全些启动之后可以用docker logs -f openclaw查看日志。看到类似“startup complete”或“server listening”的输出说明服务已经起来了。3.4 第四步进入配置向导填上你的大模型KeyOpenClaw首次启动后浏览器访问http://localhost:18686一般会进入一个初始化引导页。不同版本的引导界面可能不一样但核心流程大同小异选择模型供应商、填入API Key、设置默认Channel。如果当前版本没有Web引导页而是纯配置文件模式你需要在~/openclaw/config下找到类似config.json或config.yaml的文件手动填入模型供应商和Key。这里给一个通用配置片段作为参考model: provider: openai-compatible base_url: https://你的模型服务地址/v1 api_key: ${OPENCLAW_API_KEY} model_name: qwen-plus我额外提醒一句如果改的是配置文件记得在容器里重启OpenClaw进程或者直接执行docker restart openclaw配置才会生效。新手容易在这里卡住明明改了配置但没重启折腾老半天。3.5 第五步把飞书或Telegram绑进来以飞书为例微信、飞书、Telegram这三个渠道里我最推荐新手先从飞书或Telegram入手因为它们的开放接口比较正规、稳定不像个人微信自动化那样有账号风控风险。你完全可以把飞书群当成AI助理的“办公室”在群里直接喊它干活。以飞书为例流程分三步打开飞书开放平台创建一个企业自建应用在应用的“事件订阅”里配置请求地址http://你的公网地址/openclaw/feishu/webhook。如果只是本机测试可以用内网穿透工具把本机端口暴露成公网地址或者先用飞书的WebSocket模式不需要公网回调具体支持哪种模式看OpenClaw版本在应用里开启“机器人”能力拿到App ID和App Secret填到OpenClaw的渠道配置里对应配置大概长这样channels: feishu: enabled: true app_id: cli_xxxx app_secret: xxxx填好后重启容器然后在飞书里把机器人拉到群里它说一声“你好”如果它能回复恭喜你整条链路已经通了。3.6 第六步验证服务跑一次完整对话全链路验证别用太复杂的问题先用最简单的“你好”测试连通性。如果没反应优先查三处看容器日志docker logs --tail 50 openclaw确认渠道事件订阅是否有报错确认API Key本身是否有余额、有没有限流个人经验是八成的新手问题都出在“渠道回调地址填错”和“API Key配错”上。日志里会把具体错误打出来仔细看一遍比猜来猜去快得多。4. Channel配置与模型对接让OpenClaw按你的规矩办事4.1 认识Channel为什么一个助手能同时服务多个入口配置过OpenClaw的人应该都见过“Channel”这个词。直译过来就是“渠道”你可以理解成OpenClaw的一个个消息出入口。每接入一个平台就是启用一个Channel飞书是一个ChannelTelegram是一个ChannelWeb是一个Channel微信也类似。这种设计最大的好处是消息进来之后OpenClaw会统一处理成内部格式再交给大模型大模型返回后再按照对应平台的格式回传。也就是说渠道之间的差异被隔离掉了你在飞书里和Telegram里问同样的问题得到的是同一套大脑和记忆的回答体验是一致的。当你同时接了多个Channel之后建议在配置里给每个Channel起个清晰的名字比如feishu-main、tg-private这样后面在日志和任务配置里定位问题会轻松很多。4.2 怎么选择默认Channel多渠道消息怎么路由新手在配置OpenClaw时经常会遇到“我应该选哪个Channel作为默认”的问题。其实默认Channel只决定“当消息没有明确指定去向时从哪个渠道回复”不影响你已经绑定的其他渠道正常工作。配置里通常会有类似default_channel: feishu的字段。如果你的主力使用场景是飞书就填feishu如果人在Telegram待得更久就填telegram。这里有个很实用的小技巧很多OpenClaw版本支持在消息里带上频道前缀来手动指定去处。比如你在飞书里发一条#tg 帮我把这段话发给小张它就会通过Telegram渠道发送。这个功能刚开始用可能觉得啰嗦但当你需要“飞书接收消息、Telegram推送通知”这种组合玩法时就知道多好用。4.3 对接千问等国产大模型预算更友好不是所有人都用Claude更多国内用户首选的其实是千问这类国产大模型。OpenClaw对接千问的方式本质上就是走OpenAI兼容接口模型供应商填openai-compatiblebase_url填千问兼容接口地址model_name填qwen-plus或qwen-max这类具体模型名配置好之后你可以明显感受到成本压力小很多尤其是日常高频使用场景下千问这类模型在中文理解和日常任务上表现挺稳。如果你用的是魔塔社区的开源模型服务思路也是一样填好base_url和模型名就行。说句实在话OpenClaw这类自部署项目最爽的地方就在这今天觉得Claude贵就切千问明天想试别的模型改几行配置重启完事。模型对你来说变成了可随意切换的“大脑”而不是被某个平台绑死。4.4 定时任务和联网搜索把AI龙虾“调教”成真正的助理OpenClaw能火除了消息渠道多还有一个原因就是定时任务。你可以把它理解成给AI龙虾设置了几个“闹钟”到点它就主动干活。配置定时任务的基本思路是用cron表达式比如schedules: morning_report: cron: 0 9 * * * channel: feishu-main prompt: 早上好请根据我的待办列表生成今日工作重点意思是每天早上9点通过飞书渠道推送一条消息让模型根据待办生成工作重点。这种能力用好了OpenClaw就不再是一个“你问它才答”的机器人而是一个会主动汇报的助理。再有就是联网搜索。如果你希望AI的回答能引用最新信息需要在配置里打开搜索插件并填写搜索API相关的Key。打开之后AI在回答时效性问题前会先检索网页再组织答案。这个功能在查新闻、查技术文档、做竞品调研时特别有用。5. 新手最容易踩的坑OpenClaw常见问题排查实录5.1 WSL2环境验证失败could not safely verify the WSL2 environment这个报错我见过太多次了基本都出现在Windows上第一次启动Docker或OpenClaw环境检测阶段。核心原因有三个WSL2内核不是最新版没有在Docker Desktop里开启WSL2 IntegrationWindows的虚拟化功能被关闭BIOS里VT-x/VT-d没开或者Windows Hypervisor未启用处理顺序我建议先软后硬在PowerShell管理员执行wsl --update更新WSL2内核重启电脑打开Ubuntu执行wsl -l -v确认版本是2打开Docker Desktop的Settings - Resources - WSL Integration勾选Ubuntu如果还是不行检查Windows功能里“虚拟机平台”和“适用于Linux的Windows子系统”是否都勾选这一套组合拳下来九成以上环境验证失败都能解决。剩下那半成基本是电脑本身虚拟化能力受限比如某些老款CPU没开虚拟化只能在BIOS设置里找找开关。5.2 agent failed before reply: session file locked (timeout 60000ms)这个报错的意思是OpenClaw在处理请求前尝试锁定会话文件结果超时了。通俗讲就是有两个进程同时想读写同一个会话记录而文件锁被其中一方占着不放。常见场景有两个同一个Channel的多个消息并发进来导致会话并发写入冲突上一次请求异常退出锁文件没有被正常释放解决办法分两步走。第一步先把容器重启一下很多时候异常锁会随着进程退出被清理掉docker restart openclaw第二步排查是否有并发消息触发。如果确认是高频并发场景建议关闭会话持久化中的文件锁模式或调整超时时间。具体配置项名称以你用的版本为准但思路就是“降低写冲突”和“增加超时容忍度”。我自己的经验是这个问题大多数时候不是OpenClaw本身的bug而是底层文件系统IO慢导致的。比如把配置目录放在机械硬盘或网络挂载盘上就比放在本地SSD上更容易触发超时。把配置目录换到本地SSD问题基本就消失了。5.3 微信能发消息但发出去没人回这个问题在社区里问的人很多。先说结论如果你用的是个人微信自动化方案OpenClaw能往外发消息但收不到微信消息大概率是微信的接收通道没接入或者账号被平台风控限制了消息接收。个人微信自动化本来就处于灰色地带官方不鼓励随时可能失效或触发账号限制。所以我始终建议想稳定用OpenClaw优先走飞书、Telegram这类有官方开放接口的渠道别把核心使用绑在个人微信上。如果你一定要排查微信场景建议按这个顺序在OpenClaw日志里确认是否收到了微信消息的webhook回调确认微信侧是否配置了消息接收地址确认发消息用的账号和接收消息的账号是否一致用小号测试降低大号被风控的概率说白了这个渠道能跑通不代表能一直跑通。我的建议是别在微信这一棵树上吊死。5.4 飞书长消息输出容易被截断OpenClaw在飞书里输出长内容时经常会被截成一段段这是因为飞书对单条消息长度有限制比如超出一定字符数的消息会被强制拆分或直接失败。解决思路有三个在OpenClaw配置里开启“长消息分段发送”让模型把回答切分成多段逐条发出把模型输出token上限调低一些从源头减少单次输出的长度遇到超长内容让OpenClaw先写成文档或笔记再把链接发到飞书里我个人更喜欢第三种。比如让它写一份周报直接指定“把Markdown格式输出成飞书云文档并分享链接”既绕开了长度限制也方便存档和二次编辑。5.5 稳定运行的几个小建议最后分享一些跑了一段时间之后总结出来的稳定性经验配置目录一定要定期备份。OpenClaw的会话记录、定时任务、自定义指令都在这一个目录里丢了等于失忆容器日志会越积越大建议给Docker配置日志轮转限制单日志文件大小把OpenClaw更新当成一件常态化的事每次更新前先备份配置更新后回来看一眼日志有没有新警告尽量不要把OpenClaw和重负载应用放在同一台低配机器上它虽然不重但日志IO和网络转发都是常驻进程我现在日常已经离不开这个AI龙虾了。飞书群里消息直接喊它整理会议纪要每天早上定时让它推送当天的待办和天气偶尔写文案没灵感也会直接在聊天框里让它给个初稿。回想第一次踩在WSL2环境验证失败那个坑里折腾了一晚上的经历现在再看这些一步步跑通的流程其实也就那么回事。最后再补一句实操心得第一次跑通之后建议你花10分钟把整个部署过程记成笔记特别是自己填过的配置项、踩过的坑。原因是OpenClaw这种项目迭代速度很快隔几个月再看新版文档你会发现很多配置项变了但底层的部署思路和排查逻辑始终是相通的。那些笔记才是你真正沉淀下来的东西。
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。