专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 1072982923

返回博客首页
Docker OpenClaw 生产环境部署指南(单机架构版)
2026/2/24OpenClaw,AI,部署教程轩辕镜像团队约 21 分钟阅读

Docker OpenClaw 生产环境部署指南(单机架构版)

本文给出一套经过验证的 OpenClaw 单机生产部署方案,覆盖安全、稳定性与可维护性设计。 内容包括: Docker Compose 生产配置规范 CPU / 内存限制的正确写法 健康检查与自动恢复 TLS 与反向代理配置 防火墙与访问控制 升级与备份建议 适用于中小规模生产环境的稳定运行场景。

OpenClawAI部署教程MoltbotClawdbot人工智能

本文使用的 Docker 镜像

alpine/openclawheimdall777/openclaw1panel/openclaw

OpenClaw 项目介绍

2026年爆火的OpenClaw AI执行引擎(曾用名Clawdbot、Moltbot),由奥地利开发者、PSPDFKit创始人Peter Steinberger主导开发,于2026年1月完成品牌定名与全生态统一,是2026年全球开源领域增速最快的项目之一,截至2026年2月,其GitHub仓库星标数已突破18.6万,社区贡献者与插件生态持续高速扩张。与传统对话式AI工具截然不同,OpenClaw的核心定位是“本地运行、可自托管的AI执行引擎”,主打“从给建议到做事情”的能力跃迁——它并非被动响应的聊天机器人,而是能通过自然语言指令,自主规划并完成全流程任务的“数字员工”。项目以本地优先为核心设计理念,所有用户数据默认存储于用户自有设备,彻底实现数据主权与隐私安全自主;同时支持接入Claude、GPT、Ollama等几乎所有主流大模型,兼容Telegram、WhatsApp、钉钉、飞书、QQ等十余种主流通讯渠道,可通过可插拔的技能插件无限扩展能力边界,覆盖办公自动化、文件管理、邮件处理、日程运维、代码辅助、跨应用协同等全场景任务执行,项目基于MIT开源协议开放全部代码,支持用户免费使用、自由修改、二次开发与私有化部署。

环境准备

Docker 环境安装

一键安装 Docker 环境(推荐国内服务器使用)

bash
bash <(wget -qO- https://xuanyuan.cloud/docker.sh)
该脚本特性说明
  1. 完全基于 Docker 官方安装流程整理,行为与官方安装一致
  2. 内置国内可访问的 Docker 镜像源与软件仓库,解决网络访问问题
  3. 仅优化安装可达性,不修改 Docker 核心配置与运行行为
  4. 不包含任何 Clawdbot 相关逻辑,可独立用于其他 Docker 部署场景

其他前提条件

  • 已安装 bash v4 及以上版本(Windows 用户可通过 WSL、Git Bash 实现);
  • 生产环境需具备基础网络配置能力(如 Nginx 反向代理、HTTPS 证书配置)。

核心概念:OpenClaw Docker 镜像说明

OpenClaw Docker 镜像是个人 AI 助手 OpenClaw 的容器化版本,旨在提供标准化的部署环境,简化跨平台配置流程。

镜像基本信息

  • 基础镜像:Debian GNU/Linux bookworm-slim(因 musl 兼容性问题,暂未使用 Alpine);
  • 版本管理:按版本号发布(如 2026.2.22-beta.1),无自动同步更新机制(Docker 镜像为不可变制品),生产环境请固定版本标签,避免使用 latest/beta 等易变标签;
  • 架构支持:多架构(x86_64/ARM64),可通过 docker buildx imagetools inspect docker.xuanyuan.run/alpine/openclaw:2026.2.22-beta.1 查看具体支持情况;
  • 后续计划:开发团队正推进兼容性优化,未来将迁移至 Alpine 构建以精简体积。

核心优势

  • 跨平台支持:Windows、Mac(x86/ARM64)、Linux 全兼容;
  • 本地模型部署:支持本地大语言模型,无需第三方 API 调用;
  • 安全隔离:容器化部署,与主机环境隔离,避免权限冲突和环境污染;
  • 场景适配:支持个人测试与企业生产场景,可按需配置安全与资源策略;
  • 部署便捷:提供脚本化部署流程,降低运维门槛。

国内轩辕镜像拉取

为解决国内网络环境下官方镜像拉取慢、超时问题,本文提供 OpenClaw 国内轩辕镜像。生产环境请固定版本号,测试环境可临时使用 beta 标签。

bash
# 拉取指定版本镜像(生产推荐)
docker pull docker.xuanyuan.run/alpine/openclaw:2026.2.22-beta.1

# 可选:为镜像添加本地别名,便于后续使用
docker tag docker.xuanyuan.run/alpine/openclaw:2026.2.22-beta.1 openclaw:prod-2026.2.22
  • 轩辕镜像官方链接:https://xuanyuan.cloud/r/alpine/openclaw
  • 版本说明:生产环境必须使用具体版本号(如 2026.2.22-beta.1),禁止使用 latest 标签。

生产环境部署

生产环境需重点关注安全、稳定性与可维护性,以下为完整部署流程。

步骤 1:准备目录与配置文件

bash
# 创建生产环境目录
mkdir -p /opt/openclaw/{config,logs,data}
cd /opt/openclaw

# 创建 .gitignore 文件,避免提交敏感信息
cat > .gitignore << EOF
.env
*.log
config/*
data/*
EOF

# 创建 .env 文件,存储敏感配置(务必设置权限)
cat > .env << EOF
OPENCLAW_TOKEN=$(openssl rand -hex 32)  # 使用 openssl 生成随机令牌
OPENCLAW_IMAGE=docker.xuanyuan.run/alpine/openclaw:2026.2.22-beta.1
EOF

# 设置 .env 文件权限(关键:防止凭据泄露)
chmod 600 .env

步骤 2:编写生产级 Docker Compose 文件

创建 docker-compose.prod.yml,包含资源限制、健康检查、重启策略等核心配置:

yaml
version: '3.8'

volumes:
  openclaw_home:  # 持久化 home 目录
    driver: local

services:
  openclaw-gateway:
    image: ${OPENCLAW_IMAGE}
    container_name: openclaw-gateway-prod
    restart: unless-stopped  # 生产级重启策略:除非手动停止,否则自动重启
    environment:
      - NODE_ENV=production
      - OPENCLAW_TOKEN=${OPENCLAW_TOKEN}
    volumes:
      - openclaw_home:/home/node
      - ./config:/home/node/config:ro
      - ./logs:/home/node/logs:rw
      # 按需挂载主机目录(生产环境建议严格限制权限)
      # - /data/openclaw/files:/home/node/files:rw
    ports:
      - "127.0.0.1:18789:18789"  # 仅绑定本地回环地址,禁止直接暴露公网
    # 资源限制(普通 docker compose 模式下生效)
    mem_limit: 2g
    cpus: 2
    # 健康检查(使用 wget,避免依赖 curl)
    healthcheck:
      test: ["CMD-SHELL", "wget -qO- http://localhost:18789/health || exit 1"]
      interval: 30s
      timeout: 5s
      retries: 3
      start_period: 60s
    logging:  # 日志配置(便于集中管理)
      driver: "json-file"
      options:
        max-size: "100m"
        max-file: "5"
        compress: "true"
    user: "1000:1000"  # 非 root 用户运行(提升安全性)

  # 可选:沙箱容器(生产环境建议独立部署)
  openclaw-sandbox:
    image: openclaw-sandbox:bookworm-slim
    container_name: openclaw-sandbox-prod
    restart: "no"  # 沙箱按需启动,不自动重启
    network_mode: none  # 禁用网络(提升安全性,注意:会导致网络相关操作失败)
    mem_limit: 1g
    cpus: 0.5
    user: "1000:1000"
    volumes:
      - ./sandbox-data:/home/node/sandbox:rw

说明:若使用 Docker Swarm 模式,可将资源限制配置在 deploy.resources 下。

步骤 3:配置 Nginx 反向代理(HTTPS + 公网访问)

生产环境禁止直接暴露 Gateway 端口,需通过 Nginx 做反向代理并配置 HTTPS。

nginx
# /etc/nginx/conf.d/openclaw.conf
server {
    listen 443 ssl http2;
    server_name openclaw.your-domain.com;  # 替换为你的域名

    # HTTPS 完整配置(生产环境必须)
    ssl_certificate /etc/nginx/ssl/fullchain.pem;
    ssl_certificate_key /etc/nginx/ssl/privkey.pem;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
    ssl_prefer_server_ciphers on;
    ssl_session_timeout 1d;
    ssl_session_cache shared:SSL:10m;
    ssl_session_tickets off;

    # 强制 HSTS(提升安全性)
    add_header Strict-Transport-Security "max-age=31536000" always;

    # 限制访问(可选:仅允许指定 IP)
    # allow 192.168.1.0/24;
    # deny all;

    # 反向代理配置
    location / {
        proxy_pass http://127.0.0.1:18789;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        
        # 超时配置(适配 LLM 长响应)
        proxy_connect_timeout 60s;
        proxy_send_timeout 300s;
        proxy_read_timeout 300s;
    }

    # 健康检查接口
    location /health {
        proxy_pass http://127.0.0.1:18789/health;
        access_log off;
    }
}

# 重定向 HTTP 到 HTTPS
server {
    listen 80;
    server_name openclaw.your-domain.com;
    return 301 https://$host$request_uri;
}

步骤 4:配置防火墙(生产必须)

生产服务器需关闭 18789 端口对公网的暴露,仅开放 443 端口。以 ufw 为例(Ubuntu/Debian):

bash
ufw allow 443/tcp
ufw deny 18789/tcp
ufw enable

步骤 5:Docker Daemon 安全建议(企业环境)

bash
# 1. 开启 live-restore(容器在 daemon 重启时保持运行)
# 编辑 /etc/docker/daemon.json,添加:
{
  "live-restore": true
}

# 2. 限制 docker.sock 权限(默认已为 root:docker 660,请勿放宽)
chmod 660 /var/run/docker.sock

# 3. 生产环境禁止将 docker.sock 挂载进容器(沙箱场景需谨慎评估)

步骤 6:启动生产环境服务

bash
# 启动 Gateway 服务
docker compose -f docker-compose.prod.yml up -d

# 初始化配置(生成令牌/配置渠道)
docker compose -f docker-compose.prod.yml run --rm openclaw-gateway onboard

# 检查服务状态
docker compose -f docker-compose.prod.yml ps
docker compose -f docker-compose.prod.yml logs -f openclaw-gateway

步骤 7:生产环境升级策略

bash
# 1. 升级前备份数据卷
docker run --rm -v openclaw_home:/source -v /backup/openclaw:/dest alpine tar -czf /dest/openclaw_home_$(date +%Y%m%d).tar.gz /source

# 2. 拉取新版本镜像
docker compose -f docker-compose.prod.yml pull

# 3. 重启服务
docker compose -f docker-compose.prod.yml up -d

# 4. 验证服务状态
docker compose -f docker-compose.prod.yml ps
docker compose -f docker-compose.prod.yml logs -f openclaw-gateway

步骤 8:日志长期策略(企业级建议)

bash
# 方案 1:使用 journald driver(便于系统日志管理)
# 在 docker-compose.prod.yml 中修改 logging 配置:
logging:
  driver: "journald"
  options:
    tag: "openclaw-gateway"

# 方案 2:接入 Loki/ELK(集中日志管理)
# 参考 Loki 官方文档配置 Docker logging driver 为 loki

实用配置

1. 额外挂载主机目录

  • 测试环境:可灵活挂载,支持读写权限
    bash
    export OPENCLAW_EXTRA_MOUNTS="$HOME/.codex:/home/node/.codex:ro,$HOME/github:/home/node/github:rw"
    
  • 生产环境:仅挂载必要目录,严格限制权限
    yaml
    # 在 docker-compose.prod.yml 中添加
    volumes:
      - /data/openclaw/files:/home/node/files:ro  # 生产环境优先只读
    

2. 安装额外 APT 包

  • 测试环境:动态配置(不可复现,仅测试用)
    bash
    export OPENCLAW_DOCKER_APT_PACKAGES="ffmpeg build-essential"
    
  • 生产环境:固定版本构建(推荐) 创建自定义 Dockerfile:
    dockerfile
    FROM docker.xuanyuan.run/alpine/openclaw:2026.2.22-beta.1
    
    # 固定 Debian 包版本,确保构建可复现
    RUN apt-get update && \
        apt-get install -y --no-install-recommends \
        ffmpeg=7:5.1.5-0+deb12u1 \
        build-essential=12.9 \
        wget=1.21.3-1+b2 \  # 确保 wget 存在(用于健康检查)
        && apt-get clean && \
        rm -rf /var/lib/apt/lists/*
    
    USER node
    
    构建命令:
    bash
    docker build -t openclaw:prod-custom -f Dockerfile.prod .
    

3. 渠道配置

bash
# WhatsApp(扫码登录)
docker compose -f docker-compose.prod.yml run --rm openclaw-gateway channels login

# Telegram(输入 bot token)
docker compose -f docker-compose.prod.yml run --rm openclaw-gateway channels add --channel telegram --token "<token>"

# Discord(输入 bot token)
docker compose -f docker-compose.prod.yml run --rm openclaw-gateway channels add --channel discord --token "<token>"

4. 沙箱隔离(生产级配置)

生产环境沙箱需平衡安全性与可用性,核心配置如下:

json
{
  "agents": {
    "defaults": {
      "sandbox": {
        "mode": "non-main", // 仅沙箱非主会话(默认推荐)
        "scope": "agent", // 每个智能体一个容器
        "workspaceAccess": "none", // 不允许访问智能体工作区
        "docker": {
          "image": "openclaw-sandbox:bookworm-slim",
          "network": "bridge", // 生产环境如需网络,使用 bridge(而非 none)
          "user": "1000:1000",
          "memory": "1g", // 限制容器内存
          "cpuQuota": 50000, // 限制 CPU 使用率(50%)
          "ulimits": {
            "nproc": 1024,
            "nofile": 4096
          }
        }
      }
    }
  }
}

沙箱网络说明:

  • network: none:最高安全级别,但会导致网络相关操作(如 pip install、API 调用)失败;
  • network: bridge:允许基础网络访问,可通过防火墙限制出站流量,平衡安全与可用。

常见问题排查

1. 镜像拉取失败

  • 确认使用国内轩辕镜像,生产环境固定版本标签;
  • 检查 Docker 服务状态:systemctl status docker(Linux);
  • 配置国内 Docker 镜像源(如阿里云、网易)。

2. 访问 127.0.0.1:18789 提示未授权

  • 重新生成令牌:docker compose -f docker-compose.prod.yml run --rm openclaw-gateway dashboard --no-open;
  • 检查 .env 文件权限:ls -l .env(需为 -rw-------);
  • 生产环境检查 Nginx 反向代理配置是否正确。

3. 沙箱启动失败

  • 检查沙箱镜像是否构建:scripts/sandbox-setup.sh;
  • 若使用 network: none,确认沙箱内无网络依赖操作;
  • 检查容器资源限制是否过低:适当调高 memory/cpus 配置。

4. 生产环境服务自动退出

  • 查看容器日志:docker compose -f docker-compose.prod.yml logs openclaw-gateway;
  • 检查资源限制是否不足:调高 memory/cpus 配置;
  • 确认 restart 策略为 unless-stopped。

5. 权限错误(EACCES)

  • 修改挂载目录权限:sudo chown -R 1000:1000 /opt/openclaw/data;
  • 生产环境确保容器以 non-root 用户(1000:1000)运行。

总结

核心关键点

  1. 版本管理:Docker 镜像无自动更新,生产环境必须固定版本标签(如 2026.2.22-beta.1),禁止使用 latest/beta;
  2. 资源限制:普通 docker compose 模式下使用 mem_limit/cpus,Swarm 模式可使用 deploy.resources;
  3. 安全配置:
    • 测试环境:默认配置可直接使用,仅绑定 127.0.0.1;
    • 生产环境:必须配置反向代理 + HTTPS、防火墙、资源限制、非 root 运行、健康检查、重启策略;
  4. 健康检查:使用 wget 替代 curl,确保在 Debian slim 镜像中可用;
  5. 令牌生成:使用 openssl rand -hex 32 替代 uuidgen,更通用;
  6. 沙箱隔离:平衡安全性与可用性,生产环境推荐使用 bridge 网络 + 防火墙限制,而非完全禁用网络。

部署选型建议

  • 个人测试:选择快速启动流程,使用 beta 版本镜像,无需复杂配置;
  • 企业生产:严格遵循生产环境部署流程,补充 Nginx 反向代理、HTTPS、防火墙、日志管理、定期备份等配置,确保服务稳定安全。

你可能也想看

OpenProject Docker 容器化部署指南:从快速启动到生产环境配置

OpenProject是一款功能全面的开源项目管理平台,支持敏捷管理、任务跟踪、工时记录、成本控制等多种项目管理需求,提供社区版和企业版两种部署选项,适配不同规模团队与组织的使用场景。

OpenProject,部署教程,项目管理2026年2月3日

从零开始学构建Docker镜像:4种实用方法+生产级实践规范

本文偏向生产与工程实践,新手可跳过部分进阶章节(如CI/CD自动化、多阶段构建优化),优先掌握基础构建方法与核心规范。Docker镜像作为容器的“基石”,掌握镜像构建是玩转Docker的核心技能。本文先完成Docker环境搭建,再拆解4种构建方法与实战案例,同时补充**安全声明、生产规范与禁用场景**,适配个人开发、团队协作及准生产环境需求,帮助建立正确的技术认知与实践边界。

Tutorial,Docker2026年1月20日

Selenium Standalone Chromium 容器化部署全指南:从测试环境到企业级安全实践

STANDALONE-CHROMIUM是一个基于Docker的容器化应用,提供了Selenium Grid Standalone模式与Chromium浏览器的集成环境。该镜像允许开发者通过Selenium Grid远程运行WebDriver测试,实现浏览器自动化测试的便捷部署与管理。Selenium Grid Standalone模式将Hub和Node的功能集成在单一实例中,适合中小型测试场景或开发环境使用。

Selenium,Standalone,Chromium2026年1月18日

Docker Registry 企业级容器化部署与运维规范

REGISTRY是一个基于OCI Distribution规范的容器镜像存储与分发系统实现,主要用于存储和分发容器镜像及相关制品。作为Docker生态系统的重要组成部分,REGISTRY允许用户搭建私有或本地镜像仓库,实现镜像的集中管理、版本控制和安全分发。该镜像由Docker社区维护,支持多种硬件架构,包括amd64、arm32v6、arm32v7、arm64v8、ppc64le、riscv64和s390x等,具备良好的跨平台兼容性。

Docker,Registry2026年1月11日

QWEN3 企业级 Docker 容器化部署指南

QWEN3是Qwen LLM系列的最新一代大语言模型,专为顶级编码、数学、推理和语言任务设计。该模型支持密集型(Dense)和混合专家(Mixture-of-Experts, MoE)两种架构,提供从0.6B到235B-A22B等多种规模的模型变体,适用于从轻型应用到大规模研究的各种部署场景。

人工智能,qwen3,Ai,大模型2026年1月10日

ComfyUI Docker 镜像部署指南

ComfyUI 是一款基于节点工作流的 Stable Diffusion 图形界面,支持通过可视化方式组合复杂的图像生成流程。ComfyUI-BOOT 基于官方 ComfyUI 构建,内置:Python 运行环境,PyTorch(按 CUDA / 架构区分),ComfyUI 本体,启动与下载脚本,用于简化 ComfyUI 的部署与启动流程。

人工智能,ComfyUI,PyTorch,Stable Diffusion2025年12月31日

免责声明

本博客文章所提供的内容、技术方案、配置示例及部署指南等信息,仅供学习交流和技术参考使用。文章内容基于发布时的技术环境和版本信息编写,可能因时间推移、技术更新或环境差异而存在不适用的情况。

用户在参考本博客内容进行部署操作前,应当充分了解相关技术风险,并建议在测试环境中进行充分验证和测试,确认无误后再考虑在生产环境中使用。生产环境部署前,请务必进行数据备份,并制定相应的回滚方案。

用户因使用本博客内容进行部署操作而产生的任何损失、数据丢失、系统故障、安全风险或其他问题,均由用户自行承担全部责任。轩辕镜像官方不对因使用本博客内容而产生的任何直接或间接损失承担责任。

本免责声明的最终解释权归轩辕镜像官方所有。

最后更新:2026/2/25
轩辕镜像
官方博客
...
docker-openclaw
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
镜像拉取问题咨询请 提交工单,官方技术交流群:1072982923
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
镜像拉取问题咨询请提交工单,官方技术交流群:
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.