OpenClaw Docker 部署完全指南:从零搭建你的私有 AI Agent

OpenClaw Docker 部署完全指南:从零搭建你的私有 AI Agent

OpenClaw 是 2026 年最火的开源 AI Agent 平台,GitHub 超过 24 万 Star。它不只是聊天机器人——能操作电脑、管理文件、写代码、发消息,7×24 小时自主运行。用 Docker 部署 OpenClaw,30 分钟就能拥有一个完全属于自己的私有 AI Agent。

本文覆盖从环境准备到生产部署的完整流程,包括国内网络优化和多平台接入,适合零 Docker 经验的开发者跟着做。

摘要

  • Docker 是部署 OpenClaw 的最佳方式:环境隔离、一键安装、升级方便,官方推荐
  • 国内服务器完全可用:搭配 API 聚合平台解决网络问题,无需特殊配置
  • 最低配置 2 核 2GB:阿里云/腾讯云轻量服务器即可运行,月费约 50 元
  • 支持 50+ 平台接入:Telegram、飞书、钉钉、Discord 等,一个实例服务多个平台
  • Agent 沙箱保安全:工具调用在隔离容器中执行,生产环境必开

部署架构总览

下图展示了 Docker 部署 OpenClaw 的整体架构——聊天平台、Docker 容器、AI 模型三层清晰分离:

OpenClaw Docker 部署架构图

左侧的聊天平台(飞书、钉钉、Telegram 等)通过 Webhook 与 Docker 容器内的 OpenClaw 通信;OpenClaw 通过 API 聚合平台调用右侧的 AI 模型。所有组件通过 Docker Compose 统一管理,配置和数据通过 Volume 挂载持久化。

为什么选 Docker 部署

OpenClaw 有多种安装方式——npm 全局安装、pip 安装、源码编译。但对于生产环境,Docker 是唯一推荐方案。原因很直接:

对比维度Docker 部署直接安装(npm/pip)
环境依赖只需 Docker,零依赖冲突Node.js 版本、Python 环境、系统库
安装耗时一条命令,约 5 分钟手动配置,30 分钟起步
升级方式docker compose pull + 重启手动更新,可能破坏依赖
安全隔离容器沙箱,Agent 无法直接操作宿主机Agent 拥有当前用户的全部权限
多实例改端口即可,互不干扰需要手动管理多份配置
迁移备份打包 volume 目录即可需要导出配置 + 环境
回滚切换镜像版本标签手动降级,风险高

一句话:Docker 让你把精力放在用 OpenClaw 上,而不是折腾环境上。

环境准备

服务器配置要求

配置项最低要求推荐配置
CPU2 核4 核
内存2 GB4 GB
磁盘20 GB40 GB SSD
系统Ubuntu 22.04 / Debian 12Ubuntu 24.04 LTS
网络能访问 API 服务(直连或通过聚合平台)带宽 5Mbps+

国内云服务器推荐:阿里云轻量应用服务器 2 核 4G(约 ¥60/月)或腾讯云轻量 2 核 4G(约 ¥50/月),完全够用。

安装 Docker

如果服务器还没有 Docker,一条命令搞定:

# Ubuntu/Debian 一键安装 Docker
curl -fsSL https://get.docker.com | sh

# 将当前用户加入 docker 组(免 sudo)
sudo usermod -aG docker $USER
newgrp docker

# 验证安装
docker --version
docker compose version

确认输出 Docker 版本号和 Compose v2 即可。如果你用的是阿里云或腾讯云,系统镜像通常预装了 Docker,直接跳到下一步。

准备 API Key

OpenClaw 需要连接 AI 模型才能工作。你需要至少一个 API Key:

方案一:直接使用官方 API

分别去 AnthropicOpenAI 等官网申请。缺点是需要海外信用卡、网络不稳定、每家单独管理。

方案二:使用 API 聚合平台(推荐国内用户)

通过 Ofox 等聚合平台,一个 API Key 即可调用 GPT、Claude、Gemini、DeepSeek 等 100+ 模型。优势:

  • 国内直连,无需特殊网络配置
  • 阿里云/火山云加速节点,延迟低
  • 支持人民币付费(微信/支付宝)
  • 统一接口,切换模型只需改模型名

如果你对 API 选择还有疑问,可以参考这篇详细对比:OpenClaw API 推荐与模型配置指南

一键部署:三步完成

第一步:克隆仓库

git clone https://github.com/openclaw/openclaw.git
cd openclaw

国内服务器 clone 较慢的话,可以用镜像:git clone https://ghproxy.com/https://github.com/openclaw/openclaw.git

第二步:运行安装脚本

./scripts/docker/setup.sh

这个脚本会自动完成:

  1. 构建 Docker 镜像(或拉取预构建镜像)
  2. 启动 openclaw onboard 引导配置
  3. 生成 Control UI 访问令牌
  4. 启动 Docker Compose 服务

引导过程会依次询问:

? Select your AI provider: (选择 AI 提供商)
  > Other (OpenAI-compatible)     ← 选这个,填聚合平台地址

? Enter API base URL:
  > https://api.ofox.ai/v1        ← 填你的 API 平台地址

? Enter API Key:
  > sk-xxx                         ← 填你的 API Key

? Select default model:
  > claude-sonnet-4-6              ← 选择默认模型

? Select Search Provider:
  > Tavily                         ← Agent 联网搜索用

第三步:访问 Control UI

安装完成后,终端会显示访问令牌。打开浏览器:

http://你的服务器IP:18789

在 Settings 中粘贴令牌,就能看到 OpenClaw 的管理界面了。到这里,你的私有 AI Agent 已经在运行。

docker-compose.yml 详解

了解配置文件能帮你按需调整。以下是核心配置项解析:

version: "3.8"
services:
  openclaw:
    image: ghcr.io/openclaw/openclaw:latest
    container_name: openclaw
    restart: unless-stopped
    ports:
      - "18789:18789"          # Control UI 端口
    volumes:
      - ${OPENCLAW_CONFIG_DIR:-~/.openclaw}:/home/node/.openclaw
      - ${OPENCLAW_WORKSPACE_DIR:-~/.openclaw/workspace}:/home/node/.openclaw/workspace
    environment:
      - OPENCLAW_SANDBOX=${OPENCLAW_SANDBOX:-false}
      - OPENCLAW_DOCKER_SOCKET=/var/run/docker.sock
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:18789/healthz"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 40s

关键配置说明:

配置项作用建议
imageDocker 镜像版本生产环境锁定具体版本号,如 2026.3.7
restart重启策略unless-stopped 保证服务器重启后自动恢复
ports端口映射可改为 127.0.0.1:18789:18789 限制本地访问
volumes数据持久化配置和工作区数据存在宿主机,升级不丢失
OPENCLAW_SANDBOXAgent 沙箱生产环境设为 true,详见下文
healthcheck健康检查容器异常时自动重启

国内网络优化

国内部署 OpenClaw 最大的挑战不是安装,而是 API 网络连接。以下是实测有效的优化方案。

Docker 镜像加速

国内拉取 GitHub Container Registry 镜像可能很慢,配置镜像加速:

# 编辑 Docker daemon 配置
sudo tee /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": [
    "https://mirror.ccs.tencentyun.com",
    "https://registry.docker-cn.com"
  ]
}
EOF

# 重启 Docker
sudo systemctl restart docker

或者直接使用国内社区维护的镜像:

# 使用 1panel 社区镜像
docker pull 1panel/openclaw:latest

API 连接方案对比

方案延迟稳定性成本推荐度
官方 API 直连高(2-10s)不稳定按官方价⭐⭐
API 聚合平台(如 Ofox)低(0.3-1s)稳定与官方持平或更低⭐⭐⭐⭐⭐
自建代理中(1-3s)看线路额外服务器成本⭐⭐⭐
纯国产模型低(0.2-0.5s)稳定多数有免费额度⭐⭐⭐⭐

推荐策略:混合模型,按需切换。 在 OpenClaw 的 models.yaml 中配置多个模型层级:

model_routing:
  primary: claude-sonnet-4-6      # 复杂任务用 Claude
  fallback: gpt-4o                # Claude 不可用时切换 GPT
  economy: deepseek-v3.2          # 简单任务用 DeepSeek 省钱

通过 Ofox 平台,这三个模型用同一个 API Key 和 base_url,配置一次就行。详细的模型配置教程见:OpenClaw 模型配置完全教程

进阶配置

开启 Agent 沙箱

Agent 沙箱是 OpenClaw 最重要的安全特性之一。开启后,Agent 的工具调用(如执行 shell 命令、操作文件)在隔离容器中运行,即使 Agent 被恶意 prompt 注入,也无法影响宿主机。

# 在 .env 文件中开启沙箱
echo "OPENCLAW_SANDBOX=true" >> .env

# 确保 Docker socket 可访问(沙箱需要创建子容器)
# docker-compose.yml 中添加:
volumes:
  - /var/run/docker.sock:/var/run/docker.sock

沙箱的三种模式:

模式说明适用场景
per-agent每个 Agent 独立沙箱多 Agent 协作
per-session每次会话独立沙箱多用户共享实例
shared所有 Agent 共享沙箱单用户,节省资源

配置消息平台

OpenClaw 开箱支持 50+ 平台。以飞书为例:

# 在 ~/.openclaw/config.yaml 中添加
channels:
  feishu:
    app_id: cli_xxxxx
    app_secret: xxxxx
    verification_token: xxxxx
    encrypt_key: xxxxx

国内 IM 平台快速接入推荐使用社区镜像 openclaw-docker-cn-im,预装了飞书、钉钉、QQ 机器人、企业微信插件。

配置 HTTPS

生产环境建议用 Nginx 反向代理 + Let’s Encrypt 免费证书:

server {
    listen 443 ssl;
    server_name openclaw.yourdomain.com;

    ssl_certificate /etc/letsencrypt/live/openclaw.yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/openclaw.yourdomain.com/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:18789;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

WebSocket 的 Upgrade 头很重要,OpenClaw Control UI 依赖它实现实时通信。

日常运维

升级 OpenClaw

cd openclaw

# 拉取最新镜像
docker compose pull

# 重启服务(配置和数据通过 volume 保留)
docker compose up -d

# 确认版本
docker compose logs | head -20

锁定版本防止意外升级:把 docker-compose.ymlimage: ghcr.io/openclaw/openclaw:latest 改为具体版本号,如 ghcr.io/openclaw/openclaw:2026.3.7

备份与恢复

# 备份:打包配置目录
tar -czf openclaw-backup-$(date +%Y%m%d).tar.gz ~/.openclaw/

# 恢复:解压到目标服务器
tar -xzf openclaw-backup-20260323.tar.gz -C ~/
docker compose up -d

备份包含所有配置、Agent 记忆、对话历史。建议每周自动备份一次。

监控健康状态

# 手动检查
curl -s http://localhost:18789/healthz

# 接入 crontab 告警(每 5 分钟检查,异常发邮件)
*/5 * * * * curl -sf http://localhost:18789/healthz || echo "OpenClaw down" | mail -s "Alert" you@email.com

也可以接入 Uptime Kuma、Grafana 等监控平台,配置宕机告警。

查看日志

# 实时查看日志
docker compose logs -f

# 只看最近 100 行
docker compose logs --tail 100

# 查看特定时间段
docker compose logs --since "2026-03-23T10:00:00"

常见问题排查

遇到部署问题,先看这几个高频场景。更多报错信息可查阅:OpenClaw 常见报错排查手册

容器启动后立即退出

# 查看退出原因
docker compose logs openclaw

# 常见原因 1:内存不足(OOM Killed)
docker inspect openclaw | grep -i oom

# 解决:增加服务器内存,或限制容器内存
# docker-compose.yml 中添加:
deploy:
  resources:
    limits:
      memory: 2G

权限错误(Permission Denied)

# 容器内用户是 1000:1000,挂载目录需要匹配
sudo chown -R 1000:1000 ~/.openclaw

# 如果用 root 运行 Docker 则无此问题

API 调用超时

检查网络连通性:

# 在容器内测试 API 连通性
docker compose exec openclaw curl -s https://api.ofox.ai/v1/models \
  -H "Authorization: Bearer sk-你的key"

如果超时,说明网络不通。解决方案:

  1. 切换到支持国内直连的 API 聚合平台
  2. config.yaml 中增大 timeout
  3. 配置 fallback 模型作为备用

磁盘空间不足

# 查看 Docker 占用
docker system df

# 清理未使用的镜像和缓存
docker system prune -f

# 清理 OpenClaw 临时文件
rm -rf /tmp/openclaw/*

进阶:省钱策略

AI API 是 OpenClaw 的主要运行成本。几个实测有效的省钱方法:

  1. 模型分级:简单任务用 DeepSeek(免费额度),复杂任务才调用 Claude/GPT
  2. 合理配置 Agent:限制单次对话的最大 token 数,避免无限循环
  3. 使用缓存:OpenClaw 支持 response 缓存,重复查询不重复计费
  4. 按量付费平台:Ofox 按实际调用量计费,没有最低消费

详细的成本控制方案见:AI API 省钱终极指南

总结

Docker 部署 OpenClaw 是最省心的方案。整个流程就三步:装 Docker → 跑脚本 → 配 API Key。国内用户搭配 API 聚合平台,网络和支付问题一并解决。

部署之后,建议按这个顺序进一步优化:

  1. 先跑通基础功能,确认 Agent 能正常对话
  2. 开启 Agent 沙箱,保障安全
  3. 配置多模型 fallback,提高稳定性和性价比
  4. 接入飞书/钉钉等平台,让 Agent 真正融入工作流
  5. 设置定时备份和健康监控

如果你在部署过程中遇到模型相关的问题,这些文章可能有帮助: