我最近做了几个本地部署OpenClaw 的方案教程:
手把手教你在Windows本地部署OpenClaw中文版(openclaw-cn)快速上手教程
手把手教你用 VMware 虚拟机部署OpenClaw 实战教程,轻松打造你的本地全能 AI 助理
手把手教你部署 OpenClaw + Ollama + GLM-4.7-Flash 的纯本地方案,实现无需服务器、无模型调用费用、离线可用的 AI 助手
在实践过程中,我发现OpenClaw是一个有趣的本地智能体框架,但大多数用户反馈在国内网络环境下部署困难重重
依赖环境报错、GitHub超时、配置链路复杂……这让我想到一个问题:是否能用更简洁的方式降低部署门槛?
经过多轮验证与迭代,我找到了一套相对可靠的方案:基于Docker的部署路径。
这篇文章将详细记录整个操作流程,希望能帮助有类似需求的用户。
第一部分:为什么本地安装经常失败?
在国内环境下直接安装OpenClaw,常见的问题包括:
依赖环境构建失败:Node.js、Python等运行时配置差异导致的兼容性问题

网络连接超时:安装过程中涉及GitHub等国外服务,频繁出现超时中断

系统差异:Windows、Mac、Linux系统间的配置差异引发异常
版本不匹配:不同用户环境下的库版本冲突
这些问题的根本原因在于:传统安装方式是提供"配置文档"而非"完整环境"。
用户需要自行组装各个依赖,任何一个环节出差错就会导致整个部署失败。
第二部分:为什么选择Docker?
核心概念理解
Docker的价值在于解决一个经典问题:"为什么代码在我机器上能跑,到你那就报错?"

我用一个对比模型来说明:
| 传统部署方式 | Docker部署方式 |
| 提供安装文档(图纸) | 提供完整镜像(样板间) |
| 用户自行安装依赖 | 所有依赖预装在容器中 |
| 不同机器差异大,易出错 | 容器封闭隔离,运行结果一致 |
| 需要手动调试环境配置 | 开箱即用,无需额外配置 |
Docker三要素说明
- Docker镜像:类比为"建筑蓝图+完整施工方案",包含代码、运行时、配置等一切要素
- Docker容器:类比为"施工完成后的实际建筑",是镜像运行的实例
- 部署流程:下载镜像 → 启动容器 → 获得可用服务
相比传统的"发送文档让用户自行配置",Docker方案直接消除了个体差异带来的风险。
第三部分:操作步骤(详细版)
准备工作:安装Docker
Docker安装相对简单,基本流程是逐步确认。
安装完成后,打开终端工具:
- Windows系统:打开PowerShell
- Mac系统:打开终端
输入验证命令:
docker --version
若显示版本号(如v20.x.x),表示Docker安装成功。

重要提示:如果从Docker官网无法顺利下载,可考虑通过国内镜像源或本地获取。
具体用法也可以参考这篇文章:保姆级Docker入门教程,一步步带你轻松上手安装到发布镜像,一篇全搞明白
步骤一:启动Docker服务
确保Docker守护进程处于运行状态。在Windows上Docker Desktop应用会自动启动;在Mac上需手动打开Docker Desktop应用。
步骤二:拉取OpenClaw镜像
在终端中执行:
docker pull sgccr.ccs.tencentyun.com/openclaw/openclaw:latest
该命令会从腾讯云镜像仓库下载OpenClaw镜像(国内源,速度相对较快)。

下载过程中会分层显示进度,完成后终端会显示"Digest"和镜像ID。
步骤三:清理旧容器并创建新实例
为避免冲突,先删除已存在的旧容器和数据卷:
docker rm -f openclaw
docker volume rm openclaw-data
创建新的数据卷(用于持久化存储):
docker volume create openclaw-data
启动OpenClaw容器。注意:以下命令建议手动逐字输入,不要从文章中直接复制,因为公众号编辑器可能引入隐藏字符导致执行失败:
docker run --name openclaw -p 18789:18789 -v openclaw-data:/data sgccr.ccs.tencentyun.com/openclaw/openclaw:latest openclaw gateway run --port 18789 --bind lan --allow-unconfigured
命令参数说明:
--name openclaw:容器名称-p 18789:18789:端口映射(本地18789 → 容器18789)-v openclaw-data:/data:挂载数据卷到容器的/data目录--bind lan:允许局域网访问--allow-unconfigured:允许未配对设备访问
执行后终端应显示网关启动成功的日志信息。
步骤四:获取Dashboard访问链接
打开另一个终端窗口,执行:
docker exec -it openclaw openclaw dashboard
终端会输出一条完整的访问链接,格式类似:http://localhost:18789/dashboard?token=xxx。

复制该链接,在浏览器中打开。

页面应显示设备配对界面。
步骤五:设备配对
回到终端,执行命令获取待配对设备列表:
docker exec -it openclaw sh -lc "openclaw devices list --json"
终端会输出JSON格式的设备列表。找到"paired": false的设备记录,复制其deviceId字段值(通常是一串长字符串)。

执行配对命令(将替换为上一步复制的deviceId):
docker exec -it openclaw openclaw devices approve
示例(假设deviceId为abc123...):
docker exec -it openclaw openclaw devices approve abc123...
配对成功后,终端会显示成功提示。

刷新浏览器Dashboard页面,设备状态应变为"已连接"。

第四部分:验证与使用
这个部分可以参考之前的配置教程。
API配置
在Dashboard中配置所需的API密钥(如LLM服务的API Key)。
创建智能体
配置完成后,用户可通过简单的提示词创建定制化的工作助手智能体。
系统内置的51个Skills模块可直接调用,也支持自定义扩展。
功能特性
- 身份记忆:智能体内置用户档案管理,支持长期对话记忆
- 模块化Skills:预置51个通用能力模块,覆盖文件处理、数据查询、自动化操作等常见场景
- 本地运行:所有操作在本地执行,不依赖云端服务,数据隐私可控
总结与反思
作为产品经理,我在这次实践中的核心收获是:通过Docker这类容器化技术,可以显著降低复杂软件的部署门槛。
这套方案的适用范围并不局限于OpenClaw——任何涉及多依赖、跨平台的开发工具,都可以通过Docker容器化来解决"环境差异"问题。
本教程经过了多轮在国内网络环境下的验证,步骤简洁,成功率高,并支持Windows、Mac、Linux三大主流平台。
如果你对本地部署OpenClaw或其他AI工具感兴趣,按照上述步骤应能顺利完成部署。
后续我会继续分享API配置、Skills扩展等进阶内容,欢迎持续关注。
