昇腾OpenClaw多实例docker部署实战
1、OpenClaw 客户端容器:封装了 OpenClaw 应用逻辑,作为用户交互的前端代理,负责接收用户请求并将其转发至推理服务。2、大模型推理服务容器:封装了大模型推理引擎,作为后端服务,负责接收来自 OpenClaw 客户端的文本生成请求,并利用大语言模型进行高效推理。3、Docker Compose:作为容器编排引擎,负责定义、创建和管理包含多个 OpenClaw 实例的容器集群。
核心组件
1、OpenClaw 客户端容器:封装了 OpenClaw 应用逻辑,作为用户交互的前端代理,负责接收用户请求并将其转发至推理服务。
2、大模型推理服务容器:封装了大模型推理引擎,作为后端服务,负责接收来自 OpenClaw 客户端的文本生成请求,并利用大语言模型进行高效推理。
3、Docker Compose:作为容器编排引擎,负责定义、创建和管理包含多个 OpenClaw 实例的容器集群。
环境准备
本实操的软件配套及版本:
组件 推荐版本 备注
OpenClaw 2026.2.2 主要客户端应用
Docker 26.1.3 容器运行时环境
Docker Compose 2.17.2 容器编排工具
其中Docker和Docker Compose为业界通用软件,用户可自行查阅资料安装,本教程不过多赘述。
另外,本实操基于vLLM 引擎和昇腾vLLM Ascend插件,若未部署请先参考如下对应典配的vllm推理服务部署流程,在昇腾设备上拉起模型服务并对外提供推理API接口(推理服务模型需支持工具调用且开启该功能)。
计算服务器规格 部署模型 部署参考镜像
Atlas 300I A2标卡 Qwen3.5-35B Ubuntu镜像: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/vllm-ascend:main-nightly
OE镜像: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/vllm-ascend:main-openeuler-nightly
部署指南:https://gitcode.com/vLLM_Ascend/Qwen3.5-35B-A3B-Atlas300IA2
Atlas 800I A2单机 MiniMax2.5-230B Ubuntu镜像: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/vllm-ascend:main-nightly
OE镜像: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/vllm-ascend:main-openeuler-nightly
部署指南:https://gitcode.com/vLLM_Ascend/MiniMax-M2.5-W8A8
Atlas 800I A3单机 GLM5-744B Ubuntu镜像: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/vllm-ascend:main-a3-nightly
OE镜像: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/vllm-ascend:main-a3-openeuler-nightly
部署指南:https://ai.gitcode.com/vLLM_Ascend/GLM-5-w4a8
Atlas 800I A3双机 Kimi-K2.5-1T Ubuntu镜像: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/vllm-ascend:main-a3-nightly
OE镜像: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/vllm-ascend:main-a3-openeuler-nightly
部署指南:https://gitcode.com/vLLM_Ascend/Kimi-K2.5-w4a8
MindIE推理服务启动参考如下:
Atlas 300I DUO Qwen3-Coder-30B-A3B OE镜像: quay.io/ascend/mindie:3.0.0b1-300I-Duo-py3.11-openeuler24.03-lts
部署指南:https://gitcode.com/Ascend/ModelZoo-PyTorch/blob/master/MindIE/LLM/Qwen3/Qwen3-Coder-30B-A3B/README.MD

Ps:可以起mindie服务,也可以起vllm-ascend服务或者其他服务;
部署流程
主要部署流程分为:环境准备、集群部署、服务验证、访问Web页面并校验和集群关闭。
1. 环境与镜像准备
进入OpenClaw镜像仓库,点击镜像版本下载OpenClaw镜像。也可以参考官方Dockfile与参考Dockerfile手动构建镜像。
OpenClaw镜像仓库:https://www.hiascend.com/developer/ascendhub/detail/5faf337534c847f0b135a52af924bbf4
Dockfile:https://github.com/openclaw/openclaw/blob/v2026.2.2/Dockerfile
参考Dockerfile:https://gitcode.com/chadwweng/openclaw-deploy/blob/main/Dockerfile

2. 部署 OpenClaw 多实例集群
执行 openclaw-cluster.sh 参考脚本,可一键式地根据预定义模板启动指定数量的 OpenClaw 实例。
openclaw-cluster.sh: https://gitcode.com/chadwweng/openclaw-deploy/blob/main/openclaw-cluster.sh
2.1 关键配置参数:
OPENCLAW_GATEWAY_TOKEN: 用于 OpenClaw Gateway 服务身份验证的关键凭据。此 Token 具有高安全性要求,请在部署时通过环境变量设置或在启动脚本前由用户自行设置,并在首次成功登录后及时按照OpenClaw文档并启动脚本进行自定义部署并修改Gateway Token 为更安全的自定义值。
通过环境变量设置OPENCLAW_GATEWAY_TOKEN,请将 your_secure_token_here 设置为您自己的TOKEN,在启动脚本前设置则参考如下启动命令示例。
export OPENCLAW_GATEWAY_TOKEN=your_secure_token_here
即api_key
2.2 启动命令示例:
以下命令将基于 OpenClaw镜像,启动 2 个 OpenClaw 实例,配置其连接到 vLLM 服务(http://0.0.0.0:8000),并指定配置文件存储目录为 openclaw-config。不建议重复执行一键拉起脚本,若需重复拉起请先执行 步骤5 来关闭docker compose集群。
OPENCLAW_GATEWAY_TOKEN=your_secure_token_here \
bash openclaw-cluster.sh \
-n 2 \
-p 6000 \
-m Qwen3-30B-A3B \
-u http://0.0.0.0:8000 \
-c openclaw-config \
-i openclaw:custom
命令参数说明:
参数 描述
-n <num> 要启动的 OpenClaw 实例数量,例如 2。
-p <port> 分配给第一个实例的基础端口,后续实例端口依次递增,如 6000。需确保设置的端口无冲突且可访问。
-m <model_name> 服务模型名称,若vLLM服务模型名称(served model name)为 Qwen3-30B-A3B 则该参数为 Qwen3-30B-A3B。
-u <url> 推理服务的URL 地址(包含端口),例如 http://0.0.0.0:8000。
-c <path> 在宿主机上指定的配置文件挂载路径。该目录需为空目录且脚本会自动在其中生成各实例的配置,例如 openclaw-config。若目录非空,脚本将跳过配置创建,直接使用现有配置。
-i <image> 使用的 OpenClaw Docker 镜像,格式为 repository:tag,例如 openclaw:custom。
启动claw实例成功:

有个缺点:
npu-smi info无进程显示:
3. 验证服务状态
查看实时日志:
容器启动过程中,可通过以下docker compose命令(请根据实际docker compose 版本更改)实时查看各实例的启动日志
docker compose logs -f
4. 访问Web页面并校验
远端通过浏览器即可访问对应Gateway端口的OpenClaw交互页面,例如执行 openclaw-cluster.sh 的日志显示
实例信息:
OpenClaw-1: http://0.0.0.0:6000 (Gateway:6001)
在远程浏览器中,访问 http://{服务器IP}:{Gateway_Access_Port}。若服务器 IP 为 10.10.10.10,则访问 http://10.10.10.10:6001。
在 Web 页面左侧导航栏,选择 Overview。
在 Gateway Token 输入框中填入您在启动脚本中设置的 OPENCLAW_GATEWAY_TOKEN。
点击 Connect 按钮。若 Token 验证通过,则成功建立连接,服务可用。
Ps
chat页面不知道为什么好像连接不到起的服务一样,可能需要设置什么,不太懂,有清楚的小伙伴请指教
测试了大模型服务是没问题的:
5. 优雅关闭集群
当需要停止并移除所有 OpenClaw 实例时,在服务器端执行以下docker compose命令(请根据实际docker compose 版本更改)。此命令会停止容器并移除由 docker compose 管理的网络。
docker compose down
注意事项
当前一体机集成部署方案尚未完善,更多功能正在开发中。
OpenClaw采用容器部署时工作目录也在服务器的容器内部,容器重建时可能会导致工作目录文件丢失,可参考一键启动脚本并额外挂载持久化存储路径。
受限于一键拉起脚本的部署方式,当前所有实例的登录密码相同,可参考一键启动脚本进行自定义部署。
更多推荐


所有评论(0)