最近我把主力电脑上的个人助手彻底换掉了,从云端某款订阅制机器人迁移到了本地部署的 openclaw。折腾了一周多,从最开始一脸懵,到现在每天早上自动帮我整理 Obsidian 笔记、在 Microsoft Teams 里随时派发任务、跑定时脚本,整套方案日常运行下来确实一分钱没花。这不是标题党,而是我实际跑通的组合:开源框架 openclaw 做核心,本地 Docker 跑服务,Ollama 提供免费大模型推理,Teams 用开发者免费通道做消息出口,知识库用 Obsidian 本地仓库,额外还薅了一台阿里云免费试用服务器做远程备份和工作节点。这篇教程就是给完全没接触过 openclaw 的小白写的,不需要你懂多少编程,跟着一步一步点,把这套零成本的个人 AI 助理搭起来、连上 Teams、接好 Obsidian,最后把常见的坑都给你列一遍。
1. 先搞明白:openclaw 到底是个啥,能替你干什么
1.1 一句话解释:本地优先的个人 AI 管家
如果你用过那些需要付费订阅的 AI 助手插件,大概知道这类工具能帮你写邮件、管日程、整理文档,但后台跑在别人的服务器上,规则和数据都由平台说了算。openclaw 刚好反过来,它是一个开源的个人 AI 代理框架,强调"你的机器人,你的规则",所有核心逻辑、配置、记忆文件都放在你自己电脑上。它像是一个调度中枢,把你日常用到的各种服务——聊天软件、笔记软件、邮箱、日历、代码仓库、命令行——全部接到一起,让 AI 在里面统一调度。
我用个生活化的类比:openclaw 不是 AI 本人,它是 AI 的"助理代理"。真正动脑筋的模型是 Ollama 本地跑的 Qwen 这类开源模型,而 openclaw 负责的是"接活"——它监听 Teams 里的消息,读 Obsidian 里的笔记,把任务拆解后交给模型思考,再把结果通过各个渠道返回给你。这个"接活"和"协调"的过程完全由你控制,你写配置文件告诉它可以用哪些工具、能访问哪些目录、什么时候执行定时任务,清清楚楚。
1.2 为什么整套方案能一分钱不花
很多人一听"部署 AI 助手"就觉得烧钱,其实把账单摊开看,每一环都有免费替代方案。我做了一张自己实际在用的成本表,你感受一下:
| 组件 | 作用 | 免费方案 | 实际成本 |
|---|---|---|---|
| openclaw | 核心调度框架 | 开源软件,MIT 类许可 | 0 元 |
| Ollama | 本地大模型推理 | 开源,CPU/GPU 本地运行 | 0 元 |
| Qwen2.5 7B | 开源模型权重 | 免费下载,本地推理 | 0 元 |
| Docker | 容器运行环境 | 社区版免费 | 0 元 |
| Microsoft Teams | 消息入口/出口 | 个人免费版即可用机器人 | 0 元 |
| Obsidian | 知识库 | 个人使用免费 | 0 元 |
| 阿里云 ECS 试用 | 远程节点/备份 | 新用户免费试用额度 | 0 元 |
| 域名/HTTPS | 远程访问 | 本地方案用局域网 IP+自签名证书即可 | 0 元 |
唯一可能产生的隐性成本是你的电费和硬件贬值,但那点开销基本可以忽略。整套架构的思路就是"软件免费、算力本地、服务用免费额度",只要你有一台内存不低于 8G 的电脑,这套东西就能完整地跑起来。
1.3 适合什么样的人,不适合什么样的人
先说适合谁:想折腾自托管 AI 助手的程序爱好者、对数据隐私敏感的人、想薅免费云资源的新手、以及不想给 AI 订阅服务持续掏钱的人。因为 openclaw 的配置方式接近"写配置 + 看日志",你只要愿意接受这套工作流,稍微有点耐心,都能搞定。
不适合谁:完全不想碰命令行、连终端都不想打开的人,那确实不适合;希望 AI 开箱即用、像 Siri 那样啥都替你干不用配置的人,也不适合。openclaw 更像是给"愿意花一个周末换后面几年免费"的人准备的玩具加工具。这里提前说清楚,免得你装到一半觉得麻烦。
2. 动手之前,先把环境和材料备齐
2.1 硬件和系统要求
openclaw 本身对硬件要求不算夸张,真正的胃口来自本地模型推理。如果你只用 Ollama 跑 7B 参数级别的量化模型,8G 内存是起步,16G 会更舒服,CPU 跑起来慢一点但能接受,有 Nvidia 显卡的话体验直接起飞。系统优先选 Ubuntu 22.04 或 24.04,其他 Linux 发行版同样适用,Windows 用户建议装 WSL2,Mac 用户用 Apple Silicon 也挺稳。
我自己的主力机是一台旧笔记本,16G 内存、无独显,CPU 是 i5 十代,跑 Qwen2.5 7B Q4 量化版本,生成速度大概每秒 10 个 token 左右。日常处理"帮我总结一下今天笔记""把这三条待办加进 Obsidian"这类任务完全够用。你要是想要更快的反馈,可以改用 3B 或 1.5B 的模型,速度直线上升。
2.2 安装 Docker 和 Docker Compose
openclaw 的官方推荐部署方式就是用 Docker,好处是依赖全打包在容器里,不怕污染宿主机环境,哪天不想要了删容器就行。安装 Docker 本身不复杂,在 Ubuntu 上执行官方脚本是最省事的路径:
curl -fsSL https://get.docker.com | sh sudo usermod -aG docker $USER newgrp docker装完以后顺手把 compose 插件也装上:
sudo apt install -y docker-compose-plugin然后验证一下环境是不是正常:
docker --version docker compose version两条命令都有版本信息输出,就说明 OK。这里有个容易踩的细节:usermod把当前用户加入 docker 组以后,一定要重新登录或者执行newgrp docker,否则后面每次执行 docker 命令都要加 sudo,小白经常在这一步卡住然后以为装错了。
另外,如果你在国内,拉取 Docker 官方镜像可能遇到超时,需要在/etc/docker/daemon.json里配置镜像加速器,然后重启 Docker 服务。这一步网上资料很多,属于正常的镜像加速配置,照着填就行。
sudo systemctl restart docker2.3 安装 Ollama 和本地模型
零成本方案的核心就是 Ollama。它是本地跑大模型的工具,把模型下载、量化、推理 API 全包了,openclaw 只需要把请求发到 Ollama 的本地接口就行。安装同样是一条命令:
curl -fsSL https://ollama.com/install.sh | sh装完拉一个常用模型,我推荐 qwen2.5 的 7B 量化版,中文能力和工具调用能力都够用,而且显存/内存压力不大:
ollama pull qwen2.5:7b如果下载模型慢,可以设置国内镜像环境变量,这也是官方支持的配置方式,改完后重启 Ollama 服务再拉取。模型拉完以后,先手动验证一下推理能用:
ollama run qwen2.5:7b输入"你好,说一句话证明你在工作",能正常回复就行。Ollama 默认监听在 11434 端口,openclaw 会通过这个端口访问模型,所以这两个工具是"配套"的关系,缺一不可。
2.4 准备两个免费的"外挂"账号
整套方案虽然不花钱,但该注册的账号还是得注册。第一个是微软账号,用来搞定 Microsoft Teams 机器人接入。个人免费版微软账号即可,后面在 Azure 门户里创建机器人应用也是免费的。第二个是 Obsidian 的本地仓库文件夹,不需要账号,只要安装 Obsidian 并新建一个 Vault 目录即可。如果打算用云服务器,再提前注册一个阿里云账号,新用户有免费试用额度。
我把这些账号统称为"外挂",因为 openclaw 的设计哲学就是"框架只负责调度,具体能力靠外接服务"。每个外接服务对应一个 channel 或 connector 配置。准备账号的时候不用太纠结绑定关系,后面配置阶段缺什么补什么,但提前把账号注册好能省不少来回切换的时间。
3. 本地一键部署 openclaw 的完整流程
3.1 创建工作目录并初始化配置
环境准备就绪后,开始正式部署。这一步我采用的方案是 Docker 容器部署,整体上干净、可重复、卸载方便。先建一个专门的工作目录:
mkdir -p ~/openclaw && cd ~/openclaw然后拉取 openclaw 的 Docker 镜像。官方镜像仓库地址以项目发布页为准,常见的是 ghcr.io 仓库下的 openclaw 镜像:
docker pull ghcr.io/openclaw/openclaw:latest拉完以后,先运行一次初始化命令,生成默认配置文件和目录结构。openclaw 会把配置放在~/.openclaw下,这个目录是它的"大脑",里面存配置、日志、记忆文件,备份整个目录就等于备份了整个系统:
docker run --rm -it -v ~/.openclaw:/data ghcr.io/openclaw/openclaw:latest init初始化过程会在/data下生成类似config.yml、agent.yml、memory/、logs/的目录结构。对小白来说,你只需要知道config.yml是总开关、memory/是它长期记忆的存放地就行了。
3.2 修改核心配置文件
初始化和"一键"之间还差一个配置文件。我们直接编辑~/openclaw下的配置(实际上在~/.openclaw/config.yml),把最关键的三个部分配好:模型连接、消息通道、知识库。
OpenClaw 的配置是 YAML 格式,注意缩进不能乱,我提供一个最基础的模板,你可以在这个基础上改:
agent: name: "my-assistant" system_prompt: "你是一个高效的个人助理,使用中文回复,回答尽量简洁。" model: provider: ollama base_url: "http://localhost:11434" model_name: "qwen2.5:7b" temperature: 0.3 server: host: "0.0.0.0" port: 3000 channels: teams: enabled: false注意model.base_url这里写localhost是因为我计划用 host 网络模式运行容器,让容器直接共享宿主机网络。如果你用桥接网络模式,就要改成host.docker.internal或宿主机局域网 IP,这是新手最容易迷糊的地方。先不要启用 Teams,等下一步配置好凭据再打开。
3.3 启动服务并验证
配置文件保存好后,用一条命令把服务拉起来。我习惯用 host 网络模式,避免容器桥接网络带来的端口映射和 localhost 指向问题:
docker run -d \ --name openclaw \ --network host \ -v ~/.openclaw:/data \ -v /path/to/your/obsidian/vault:/vault \ --restart unless-stopped \ ghcr.io/openclaw/openclaw:latest参数解释一下:-d是后台运行,--network host让容器直接使用宿主机网络,-v挂载配置目录和 Obsidian 笔记目录,--restart unless-stopped是开机自启和异常自动重启,这个参数对"日常稳定运行"特别重要。
启动后看日志确认是否正常运行:
docker logs -f openclaw看到类似server started on port 3000的输出,就说明 openclaw 已经起来了。你可以打开浏览器访问http://localhost:3000看看管理面板,如果能看到服务状态和代理列表,说明部署成功。这里提醒一句:首次访问如果提示需要 API Key 或管理员口令,去~/.openclaw/logs里找初始化生成的临时凭据,或者在配置文件的 server 部分自己指定。
3.4 日常运维命令速查
服务跑起来以后,日常无非就是重启、看日志、更新版本这三件事。我把常用的命令整理成一张速查表,建议收藏:
| 需求 | 命令 |
|---|---|
| 查看实时日志 | docker logs -f openclaw |
| 重启服务 | docker restart openclaw |
| 彻底停止 | docker stop openclaw && docker rm openclaw |
| 更新镜像 | docker pull ghcr.io/openclaw/openclaw:latest && docker restart openclaw |
| 进入容器调试 | docker exec -it openclaw bash |
我个人的经验是,凡是配置改了以后发现不生效的,第一反应别急着删容器,先docker logs看有没有报错,90% 的问题在日志里都有明确提示。
4. 接入 Microsoft Teams:让 openclaw 变成一个会聊天的机器人
4.1 为什么消息出口选 Teams
个人助手总得有个你随时能跟它说话的地方。命令行窗口当然可以,但不方便手机上用,也不方便语音输入。我选 Microsoft Teams 做消息出口,原因很直接:它免费、跨平台、安卓 iOS Windows Mac 都有客户端,而且微软的 Bot Framework 提供了一套成熟的机器人接入通道,openclaw 官方对 Teams 的支持也做得比较完善。
说白了,你的 openclaw 从此变成了你 Teams 通讯录里的一个"联系人",你可以私聊它、拉它进群、@它派任务。它给你发消息,就是你手机上的通知推送,响应速度跟在电脑前差不多。
4.2 在 Azure 门户注册机器人应用
Teams 接入的难点不在 openclaw,而在微软那一堆繁琐的注册流程。别慌,一步步来。先登录 https://portal.azure.com ,用你注册好的微软账号。这里给你梳理成 5 个步骤:
- 在顶部搜索框搜"应用注册"(App registrations),进入后点击"新注册"。名字随便填,比如
openclaw-bot,受支持的账户类型选"任何组织目录中的账户和个人 Microsoft 账户",重定向 URI 先留空,点击注册。 - 注册成功后,你会看到一个"应用程序(客户端) ID"和"目录(租户) ID",这两个值复制下来存好,待会要填进 openclaw 配置。
- 在左侧菜单找到"证书和密码",点击"新客户端密码",说明随便填,过期时间选最长(通常是 24 个月),创建后马上复制客户端密码的值。这个值只显示这一次,刷新页面就没了,务必保存到本地。
- 回到 Azure 首页,搜索"Azure Bot"或"机器人服务",创建一个"Azure Bot 机器人注册"资源。名字填
openclaw-bot,定价层选"F0 免费层",应用类型选"Multi Tenant",然后在下方的"Microsoft App ID"和"应用密码"里填入刚才复制的那两个值。 - 创建完成后,进入这个 Bot 资源,左侧菜单找到"通道",点击"配置"列表里的 Microsoft Teams 图标,按照提示启用 Teams 通道。
整个过程看着长,实际二十分钟就能搞定。注意第 3 步的客户端密码千万不要漏存,漏了只能重新生成一个,又要折腾一遍。
4.3 在 openclaw 里填入 Teams 凭据
Azure 那边注册好了,现在回到 openclaw 这边,把 Teams 通道打开。修改~/.openclaw/config.yml,把之前留着的channels.teams.enabled改成true,并补上凭据:
channels: teams: enabled: true microsoft_app_id: "你的应用程序(客户端) ID" microsoft_app_password: "你的客户端密码值" tenant_id: "你的目录(租户) ID"保存后重启 openclaw:
docker restart openclaw然后盯日志:
docker logs -f openclaw看到类似teams channel started的输出,说明 Bot 已经成功连接到微软的 Teams 通道。如果日志出现 401 或 403 认证错误,优先检查客户端密码是否复制完整、是否多复制了空格。
4.4 实测验证和日常使用技巧
验证方式是打开 Teams,搜索你创建的 Bot 名称(如果你在 Bot 资源里设置了"显示名称"),找到它以后点开私聊,发送一句"你好"。正常情况下,openclaw 会调用 Ollama 模型,通过 Teams 回复你一条消息。如果 Bot 没有出现在搜索列表里,检查两步:Bot 的 Microsoft App ID 是否和 openclaw 配置里的一致;Teams 通道是否已经启用,启用后最长需要等 15 分钟左右才生效。
日常使用技巧方面,我实测下来有这么几个顺手的玩法:把 Bot 拉进一个只有你自己的私人群,用它做"个人备忘中转站",在手机上随手发一条"提醒我三点开会",它会帮你整理进 Obsidian 的待办事项;用 Teams 的语音转文字功能给 Bot 发语音消息,相当于给 AI 配了个语音输入,这个组合实测效率极高;如果你的团队本来就用 Teams,可以把 Bot 拉进项目群,让它在群里定时汇报任务进度,这就有点"团队 AI 助理"的味道了。
5. 接入 Obsidian:把个人笔记变成 AI 知识库
5.1 为什么要接 Obsidian
openclaw 最让我满意的能力,是它能读写 Obsidian 笔记库。Obsidian 的笔记是纯 Markdown 文件,存在本地,天然适合让 AI 处理。接了 Obsidian 之后,openclaw 能做到"翻遍你所有笔记找资料""按你的双链结构总结专题""把聊天里零散的想法自动归档进笔记"。这本质上是在给你的本地笔记加了一层 AI 索引。
我自己的 Obsidian 库里有几百篇笔记,包括技术备忘、读书摘录、项目复盘。以前想找"之前记过的某条思路"得靠标签和搜索硬翻,现在直接跟 Bot 说"帮我找一下上个月关于 API 限流的思考",它通过知识库工具在 vault 里全文搜索,把相关段落贴出来。这种体验用一次就回不去了。
5.2 三种接入方式怎么选
openclaw 接入 Obsidian 不是只有一种途径,我试过三种,各有适用场景。
一种是文件系统直挂,就是我在部署时把宿主的 vault 目录用-v参数挂载进容器的/vault路径,openclaw 通过文件读写直接访问笔记。这种方案的优点是简单、可靠、无需额外插件,适合一个人本地的场景;缺点是没有索引,搜索大量笔记时性能一般。
第二种是走 Obsidian 的 Local REST API 插件,这个插件给 Obsidian 开了一个本地 HTTP 接口,openclaw 可以查询文件列表、读取/写入笔记,比裸文件系统多了一层"结构化"能力。代价是你必须在桌面端保持 Obsidian 打开状态,服务一关接口就没了。
第三种是通过 MCP(Model Context Protocol)的 Obsidian server 来做,这也是目前比较新的路子。MCP 相当于给 AI 提供了一些标准化的"工具接口",openclaw 通过 MCP 客户端连接 Obsidian 的 MCP 服务端,能拿到笔记、创建笔记、搜索内容,改动都在插件层隔离,算是比较干净的方案。
我的建议是:先用第一种文件挂载跑通全流程,等对 openclaw 的配置熟练了再考虑升级到 MCP,别一上来搞新东西把自己绕晕。
5.3 配置实操:文件挂载方案
文件挂载方案其实不用额外改 openclaw 的配置,关键在于容器启动时要把 vault 目录挂进去。我先在宿主机确认 vault 路径:
echo $HOME/Documents/MyVault然后在配置文件的 knowledge 部分启用文件系统访问,并指定容器内的路径:
knowledge: obsidian: enabled: true vault_path: "/vault"重启 openclaw:
docker restart openclaw重启后在 Teams 里给 Bot 发一条:"读取我的 vault 根目录,生成一份文件清单,按最近修改时间排序。"如果它能把笔记文件名列出来,连接就通了。注意容器里的用户权限问题:如果 openclaw 容器以 root 运行,读写 vault 一般没问题;如果以非 root 运行,可能碰到底层目录权限不足,本机测试无所谓,云服务器上要留意。
5.4 几个越用越香的自动化场景
接入 Obsidian 以后,自动化玩法才是真正值钱的部分。先说我最常用的"每日自动归档":我每天会在 Teams 里随手发各种碎片想法,openclaw 监听到新消息后,自动在 vault 的inbox/目录下新建一条 Markdown 笔记,带上日期标签,原文照录。晚上我再统一整理,一个收集环节就被省掉了。
第二个是"周报自动生成":我提前在 vault 里建了diary/目录存放每日记录,然后写一个定时任务配置,每周五让 openclaw 读完本周所有日记,按项目维度汇总成一份周报草稿,写到weekly/2025-W50.md里。这个功能每周能省我半小时。
第三个是"双链检索问答":我给 Obsidian 配置了一个"xx主题"的专题笔记,里面手动建好了几个关键页面的双向链接。openclaw 在回答相关问题时会顺着这些链接去找上下文,得到的答案比单纯全文搜索更有条理。这个用法适合内容创作者或研究者。
6. 免费云服务器方案:本地不够用时的零成本解法
6.1 本地部署和云服务器怎么选
本地部署最大的痛点是"断点依赖"——电脑关机、休眠、外带出差,openclaw 就失联了。而云服务器的好处是 7x24 小时在线,你在外面也能随时通过 Teams 跟它对话。所以我的实践经验是:本地跑主力,云服务器跑备份节点和定时任务调度,两边数据通过 Git 仓库或者 rsync 同步。
云服务器方案的门槛只有一个:钱。但新手可以薅免费试用,比如阿里云新用户经常有免费试用 ECS 的活动,一般给 2 核 4G 内存、40G 云盘,可用 3 个月左右,足够跑 openclaw + Ollama 小模型了。这个额度用来测试、学习、跑轻量服务非常划算。
6.2 阿里云免费试用申请流程
申请流程很简单,我实际走了一遍:注册并登录阿里云,完成实名认证,进入"免费试用中心",找到云服务器 ECS 的试用选项,选择地域(挑离你近的就行)、镜像选 Ubuntu 22.04、规格选试用的默认规格,确认后提交。创建实例后,系统会分配一个公网 IP,控制台里能看到。
拿到实例后的第一件事是改安全组:登录 ECS 控制台,找到安全组配置,放行 22 端口(SSH)、3000 端口(openclaw),如果要用 Teams 通道,其实不需要对外开放其他端口,因为 Teams 通道是 Bot 主动连出去的,属于出站连接。这一步很多人漏掉,结果 SSH 都连不上,白白耽误时间。
6.3 云服务器上的部署与安全配置
云服务器上的部署流程和本地一模一样,无非是先用 SSH 连上去:
ssh root@你的公网IP然后按照第 2 节和第 3 节的步骤装 Docker、Ollama、拉镜像、启动 openclaw。区别有两点:一是 Ollama 模型别拉太大的,7B 在 4G 内存的机器上会比较吃力,推荐用 qwen2.5:3b 或 1.5b,牺牲部分质量换稳定运行;二是必须给 openclaw 配置管理员口令并修改默认端口,避免公网裸奔被人扫到。
我在云服务器上只跑了一个轻量级的 openclaw 实例,模型用 3B,主要负责定时任务:每天早上 9 点给 Teams 发一条昨日笔记摘要,每周日做一次 vault 全库备份。本地主力服务则负责需要大量推理的复杂任务,两台机器通过一个共享的 Git 仓库同步配置,两边改完配置各自docker restart即可。
6.4 迁移和备份
免费试用的服务器到期前,一定要做迁移,不然数据就没了。我的迁移策略很朴素:整个~/.openclaw目录就是全部家当,用 tar 打包传到新机器解压,再跑一遍容器启动就完事。Obsidian vault 因为是 Git 仓库管理的,直接git clone就同步过来了。
tar -czf openclaw-backup.tar.gz ~/.openclaw /path/to/vault建议设置一个每周自动备份的定时任务,crond 或者 systemd timer 都行。我实际用的是一个简单的 crontab:
0 3 * * 0 tar -czf /backup/openclaw-$(date +%Y%m%d).tar.gz ~/.openclaw恢复时解压回去,再重新启动容器即可,openclaw 的记忆、配置、渠道状态都会原样回来。
7. 疑问排查与避坑实录
7.1 容器反复重启或端口占用
刚部署那阵,我遇到最多的就是容器起来就死、重启也没用。排查思路按顺序走:先看日志docker logs openclaw,看有没有明确报错;再确认端口是否被占用,ss -tlnp | grep 3000,如果端口被别的服务占了,改配置文件里的server.port;如果日志显示模型连接失败,curl http://localhost:11434/api/tags测一下 Ollama 是否活着,没反应就去检查 Ollama 服务状态。
还有一类隐蔽问题:你就是漏了--network host,导致容器内部访问 localhost 指向了自己而不是宿主机。这类问题报错特征非常典型,日志里出现"connection refused"且由于是映射关系造成的。解决方式是启动容器时带上--network host,或者把配置里的 base URL 改成宿主机的局域网 IP。
7.2 Teams 收不到消息
Teams 机器人最诡异的坑是"配置看起来全对但就是收不到消息"。我实测下来排查顺序是这样的:第一步,打开 Teams 客户端,在聊天列表里搜索你的 Bot 名字,搜不到就是 Bot 注册资源和 openclaw 配置里的 App ID 对不上;第二步,搜到了但发了消息没反应,去看 Azure Bot 资源的状态页,确认"通道"列表里 Teams 已启用;第三步,确认 openclaw 日志没有报错,如果日志一片空白,说明消息根本没进 openclaw,这时候去 Azure Bot 资源的"测试"页面发一条消息,能通就说明微软侧正常。
如果以上都没问题,最后一个低级但常见的坑是:Teams 通道从启用状态到真正在客户端可搜,最长需要 15 分钟到半小时的全球同步时间。我一度在这上面卡了一晚上,最后睡了一觉醒来它就活了。所以配完 Teams 可以先干点别的,别对着屏幕干等。
7.3 内存占用太高或响应变慢
本地跑 AI 助手,内存是最容易爆的瓶颈。Ollama 7B 模型默认会把大量内存用于 KV cache,导致 openclaw、Obsidian、浏览器全都挤在一起卡。我的调优三板斧:第一,换小模型,7B 降到 3B,日常对话你根本感觉不到区别;第二,给 Ollama 设置 OLLAMA_MAX_LOADED_MODELS=1 和 OLLAMA_KEEP_ALIVE=5m,避免模型常驻内存太久;第三,给 openclaw 容器加内存限制,比如--memory=2g,防止它被某个异常任务拖垮整个系统。
有时候响应慢不是因为推理慢,而是 openclaw 在尝试访问某个外部服务时超时。我遇到过它访问某个笔记同步接口超时 30 秒才返回,导致整个交互像卡死。解决方案是在外部连接层面配置网络超时,让内部异常快速失败。
7.4 不要踩的几个"隐形坑"
最后分享几个我踩过之后才重视的隐形坑。一个是 Obsidian 挂载目录权限问题:容器如果用非 root 用户运行,在 vault 目录里创建新文件可能报 permission denied,解决方式是给 openclaw 挂载时指定用户 ID 或者干脆宿主机目录chmod -R 777(仅限本机测试环境)。另一个是 YAML 配置缩进问题:openclaw 对配置文件的格式要求比较严格,Tab 和空格不能混用,缩进层次错了会直接启动失败,建议编辑器里显示空白字符。
再一个是更新版本前一定要备份配置目录。openclaw 迭代速度很快,镜像版本更新可能改变配置结构,别一股脑拉最新镜像然后 restart,先备份、再拉新、再看日志,稳妥。最后一点,不要把公网访问想得太简单:如果实际部署在云服务器且不打算配置 HTTPS,至少给 openclaw 的管理端口设置强口令,否则你的"私人助理"会成了个半公开的服务,谁扫到端口都能调用。
我个人在实际操作中的体会是:openclaw 这套方案,真正值钱的地方不是安装本身,而是装完之后你愿意花时间训练它适应用你的工作流。头两天可能平平无奇,等接上 Teams、喂满 Obsidian 笔记、跑顺定时任务,它就从一个"玩具"变成了每天离不开的工具。最后再分享一个小技巧:没事多看一眼 openclaw 的日志,不要只在出错时打开它,它会把每一步调用的细节都打印出来,常看日志会让你对这个系统的理解越来越深,后面任何疑难杂症都不怕了。