SuperAPI AI 工具集

openclaw-china-docker

部署与运维

查看项目

更新于 10-15 12:06

技能介绍

用途

OpenClaw China Docker 是一个生产就绪的 Docker 镜像,将 OpenClaw AI 机器人网关与主流中国 IM 平台打包集成,预装了飞书(Lark)、钉钉、QQ 机器人、企业微信(WeCom)等平台的插件。该技能帮助用户部署和配置这一镜像,实现 AI 机器人在中国 IM 平台上的快速接入。

主要能力

  • 多平台支持:飞书(官方/旧版)、钉钉、QQ 机器人、企业微信。
  • 扩展能力:Agent Reach 集成,支持 Twitter、小红书、微博、抖音等平台。
  • 配置驱动:基于环境变量和 .env 文件进行设置。
  • 增强工具:内置 FFmpeg、Playwright、中文 TTS、OpenCode AI。
  • 安全:Docker-in-Docker 沙箱模式用于代码执行。
  • 生产特性:数据持久化、隔离的工具容器。

使用方式

前置条件

  • 已安装 Docker 和 Docker Compose
  • AI 模型的 API 密钥(OpenAI、Claude 等)
  • 目标 IM 平台的机器人凭证

快速开始

# 克隆仓库
git clone https://github.com/justlovemaki/openclaw-china-docker.git
cd openclaw-china-docker

# 复制环境模板
cp .env.example .env
# 或使用最小版本快速设置
cp .env.minimal .env

# 编辑环境变量
nano .env

# 启动服务
docker compose up -d

# 查看日志
docker compose logs -f openclaw

# 停止服务
docker compose down

直接拉取 Docker 镜像:

docker pull justlikemaki/openclaw-docker-cn-im:latest

核心配置

项目使用环境变量进行配置,主要分为以下几类:

AI 模型配置:支持 OpenAI 兼容 API、Claude API,以及 AIClient-2-API(推荐用于无限令牌)。

飞书配置:支持官方插件(推荐)和旧版内置版本,需配置 App ID、App Secret、Verification Token、Encrypt Key 等。

钉钉配置:需配置 Client ID、Client Secret、Robot Code 等。

QQ 机器人配置:需配置 AppID、Secret、Intent 等。

企业微信配置:需配置 Corp ID、Agent ID、Secret、Token、Encoding AES Key 等。

沙箱配置:通过 OPENCLAW_SANDBOX_MODE 设置(all、non-main、none)。

Docker Compose 设置

最小 docker-compose.yml 示例:

version: '3.8'

services:
  openclaw:
    image: justlikemaki/openclaw-docker-cn-im:latest
    container_name: openclaw-cn-im
    restart: unless-stopped
    env_file:
      - .env
    ports:
      - "3000:3000"
    volumes:
      - ./workspace:/openclaw/workspace
      - ./data:/openclaw/data
      # 取消注释以启用 Docker 沙箱模式
      # - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - TZ=Asia/Shanghai

常用命令

容器管理:

# 启动服务
docker compose up -d

# 查看日志(所有服务)
docker compose logs -f

# 查看日志(特定服务)
docker compose logs -f openclaw

# 重启服务
docker compose restart openclaw

# 停止服务
docker compose down

# 停止并删除卷
docker compose down -v

进入容器:

# 交互式 shell
docker compose exec openclaw bash

# 执行单条命令
docker compose exec openclaw openclaw --version

升级:

# 拉取最新更改
git pull origin main

# 拉取最新镜像
docker compose pull

# 重新创建容器
docker compose up -d --force-recreate

# 清理旧镜像
docker image prune -f

插件安装(以飞书为例):

# 使用工具容器执行一次性操作
docker compose run --rm openclaw-utils bash

# 在容器内:
cd /openclaw
npx openclaw plugin:install larksuite/openclaw-lark

常见模式

模式 1:多平台完整设置:在 .env 中启用多个 IM 平台并配置各自凭证,然后部署并监控日志。

模式 2:与 AIClient-2-API 集成:使用 AIClient 实现无限令牌,在 docker-compose.yml 中添加 AIClient 服务。

模式 3:启用 Agent Reach 进行网络搜索:在对话中初始化 Agent Reach,替换内置的 web_search、web_fetch 工具,用于搜索 Twitter、小红书、微博、抖音等。

模式 4:沙箱模式安全执行代码:设置 OPENCLAW_SANDBOX_MODE=all,并挂载 Docker socket,使代码在隔离容器中运行。

模式 5:使用 openclaw.json 自定义配置:挂载自定义配置文件替代环境变量。

模式 6:数据持久化:挂载 workspace、data、logs 卷,并定期备份。

故障排查

技能提供了常见问题的排查方法,包括:容器启动失败、飞书插件不工作、AI 模型无响应、Docker 沙箱不工作、卷权限错误、内存或性能问题、插件冲突等。每个问题都给出了具体的检查命令和解决步骤。

高级配置

  • 环境变量参考:OPENCLAW_AI_PROVIDER、OPENCLAW_SANDBOX_MODE、OPENCLAW_LOG_LEVEL、OPENCLAW_SERVER_PORT、OPENCLAW_SERVER_HOST 等。
  • 多阶段部署:区分开发和生产环境,使用不同的 compose 文件。
  • 健康检查:在 docker-compose.yml 中配置 healthcheck。

文档参考

  • 快速开始:docs/quick-start.md
  • 配置:docs/configuration.md
  • AIClient 集成:docs/aiclient-2-api.md
  • 高级用法:docs/advanced.md
  • FAQ:docs/faq.md
  • 开发者笔记:docs/developer-notes.md

最佳实践

  • 始终使用 .env 文件而非硬编码凭证
  • 仅启用需要的平台以减少资源占用
  • 挂载卷以实现工作区和数据持久化
  • 使用 AIClient-2-API 实现经济高效的无限令牌使用
  • 启用沙箱模式以安全执行代码
  • 定期使用 docker compose logs -f 监控日志
  • 升级前使用 tar -czf 备份数据
  • 升级前使用 git pull 保持仓库同步

适用场景

适用于需要在中国 IM 平台(飞书、钉钉、QQ、企业微信)上部署 AI 机器人的开发者和运维人员,尤其是希望通过 Docker 快速搭建、配置和管理多平台 AI 网关的场景。

限制

使用前需具备 Docker 和 Docker Compose 环境,并拥有相应 AI 模型的 API 密钥和各 IM 平台的机器人凭证。部分高级功能(如沙箱模式)需要挂载 Docker socket,可能带来安全考量。具体平台支持范围和功能细节以官方文档为准。