部署与 Docker
OpenClaw 的各类进阶部署指南,包含本地、Docker 以及各大云服务商的实战案例
🔀 部署方式选择
OpenClaw 支持多种部署方式,可根据实际需求选择:
| 部署方式 | 优势 | 劣势 | 适用场景 |
|---|---|---|---|
| 本地部署 | 运行速度快、数据私有化、无服务器费用 | 需要备用主机、存在权限风险 | 有闲置电脑、对数据隐私要求高 |
| Docker 部署 | 环境隔离、易于迁移、配置简单 | 需要 Docker 基础知识 | 开发测试、快速部署 |
| 云端部署 | 7×24 小时运行、配置灵活、无本地设备占用 | 需支付服务器费用 | 生产环境、团队协作 |
💡 入门推荐:优先选择云端(如轻量应用服务器)结合 Docker 部署方案,成本低、操作简单、稳定性极高。
🏠 本地部署
环境要求
- Node.js ≥ 22.0.0
- 内存 ≥ 4GB
- 磁盘空间 ≥ 2GB
安装步骤
- 安装 OpenClaw:
npm install -g openclaw@latest- 初始化配置:
openclaw onboard --install-daemon- 启动服务:
openclaw gateway --port 18789详细步骤请参考 安装指南。
🐳 Docker 部署
前置准备
安装 Docker:
# Linux
curl -fsSL https://get.docker.com | sh
# macOS
brew install docker
# Windows
# 下载 Docker Desktop: https://www.docker.com/products/docker-desktop使用官方镜像
快速启动
docker run -d \
--name openclaw \
-p 18789:18789 \
-e NODE_OPTIONS="--max-old-space-size=4096" \
ghcr.io/openclaw/openclaw:latest持久化数据
docker run -d \
--name openclaw \
-p 18789:18789 \
-v ~/.openclaw:/root/.openclaw \
-e NODE_OPTIONS="--max-old-space-size=4096" \
ghcr.io/openclaw/openclaw:latest使用 Docker Compose
创建 docker-compose.yml:
version: '3.8'
services:
openclaw:
image: ghcr.io/openclaw/openclaw:latest
container_name: openclaw
ports:
- "18789:18789"
volumes:
- ~/.openclaw:/root/.openclaw
environment:
- NODE_OPTIONS=--max-old-space-size=4096
- TZ=Asia/Shanghai
restart: unless-stopped启动服务:
docker-compose up -d自定义构建
创建 Dockerfile:
FROM node:22-alpine
WORKDIR /app
RUN npm install -g openclaw@latest
EXPOSE 18789
CMD ["openclaw", "gateway", "--port", "18789"]构建并运行:
docker build -t my-openclaw .
docker run -d -p 18789:18789 my-openclaw☁️ 云端部署
腾讯云轻量应用服务器(推荐)
1. 购买服务器
- 访问腾讯云轻量应用服务器
- 选择配置:
- 地域:国内模型选国内地域,国外模型选海外地域。
- 镜像:选择「OpenClaw 镜像」(如有)或「Ubuntu 22.04 LTS」。
- 套餐:2核2G(基础任务)或 2核4G(复杂任务)。
- 时长:按需选择(新用户有优惠)。
- 完成支付,等待服务器初始化(约 1-2 分钟)。
2. 连接服务器
方式 1:使用控制台
- 在服务器列表中点击「登录」
- 使用网页弹出的 Browser SSH 终端继续操作。
方式 2:使用 SSH 客户端
ssh root@your-server-ip3. 安装 OpenClaw
(如果使用 OpenClaw 镜像,跳过此步骤)
# 安装 Node.js
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt-get install -y nodejs
# 安装 OpenClaw
npm install -g openclaw@latest
# 初始化配置
openclaw onboard --install-daemon4. 配置防火墙
在腾讯云控制台「防火墙」中添加规则:
- 协议:TCP
- 端口:18789
- 来源:0.0.0.0/0(或限制特定 IP 白名单)
5. 启动服务
# 启动 Gateway 主网关控制器
openclaw gateway --daemon
# 查看状态
openclaw status6. 配置域名(可选)
- 在腾讯云购买并备案好域名。
- 添加 DNS 的 A 记录指向服务器 IP。
- 配置 Nginx 反向代理:
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:18789;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}阿里云 ECS
1. 购买 ECS 实例
- 访问阿里云 ECS 云服务器专区
- 选择资源配置:
- 地域:就近选择。
- 实例规格:比如 ecs.t6-c1m2.large(2核2G)。
- 系统镜像:Ubuntu 22.04。
- 网络:按需分配带宽。
- 完成购买获取 IP。
2. 配置安全组
在 ECS 控制台「安全组」中添加入方向规则:
- 端口范围:18789/18789
- 授权对象:0.0.0.0/0
3. 安装部署
参考腾讯云的安装步骤进行构建。
AWS EC2
1. 创建 EC2 实例
- 登录 AWS 后台控制台。
- 选择 EC2 服务并启动向导:
- AMI 选项:Ubuntu Server 22.04 LTS
- 实例规格类型:t3.small(2核2G)。
- 配置安全组:开放 18789 端口。
2. 连接实例
ssh -i your-key.pem ubuntu@your-instance-ip3. 安装部署
参考上方通用安装命令布置。
📸 使用 OpenClaw 应用镜像(腾讯云)
腾讯云提供了预配置的 OpenClaw 镜像,可以实现飞速部署上云。
1. 选择镜像
在购买轻量应用服务器选配时,请在「应用镜像」标签栏选择「OpenClaw」。
2. 访问应用管理
服务器开机启动后:
- 在控制台点击进入「应用管理」。
- 跳转到 OpenClaw Web 配置界面。
3. 配置模型
在「模型」管理模块:
- 挑选想用的 AI 大模型驱动源(如:阿里千问 Qwen 3.5 Plus)。
- 点击「获取 API KEY」跳转到发放平台。
- 创建并复制 API Key 签名内容。
- 黏贴进入配制框,点击「应用」保存。
4. 配置渠道
找到「通道」模块:
- 选择你要挂载的渠道类型(例如:飞书)。
- 输入由通讯平台分配给机器人的凭证标识(App ID, App Secret)。
- 点击「添加并应用」。
5. 验证部署
打开对应的 IM 工具测试机器人能否正常响应指令。
🏭 生产环境配置
使用 Systemd 管理服务进程
创建系统级服务描述文件 /etc/systemd/system/openclaw.service:
[Unit]
Description=OpenClaw AI Gateway Agent
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/root
ExecStart=/usr/bin/openclaw gateway --port 18789
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target激活并守护:
systemctl enable openclaw
systemctl start openclaw
systemctl status openclaw使用 PM2 管控保护
安装 NPM 常用的进程库守护神 PM2:
npm install -g pm2挂载启动 OpenClaw 控制核心:
pm2 start openclaw -- gateway --port 18789
pm2 save
pm2 startup配置 Nginx 进行反向代理代理
安装 Nginx:
apt-get install nginx将以下规则写入配置代理到对应子站点 /etc/nginx/sites-available/openclaw:
server {
listen 80;
server_name your-target-domain.com;
location / {
proxy_pass http://localhost:18789;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}启用建立真实引用的软链接:
ln -s /etc/nginx/sites-available/openclaw /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx强化 SSL/HTTPS
使用业界良心 Let's Encrypt 签发免费强效证书:
# 安装签发专用 Certbot 和 nginx 环境解析插件
apt-get install certbot python3-certbot-nginx
# 获取并主动绑定进上述的 nginx 块中
certbot --nginx -d your-target-domain.com
# 自动续期测试
certbot renew --dry-run🏎️ 性能优化
调整 Node.js V8 引擎内存
export NODE_OPTIONS="--max-old-space-size=4096"启用系统高速缓存
在当前配置文件(如 .openclaw/config.json)中相关 JSON 层级设定参数:
{
"cache": {
"enabled": true,
"type": "redis",
"host": "localhost",
"port": 6379
}
}使用真正的 Redis 数据库
如果尚未安装,可系统级补充下此缓存组件:
apt-get install redis-server接着通知 OpenClaw 接入其引用:
{
"session": {
"store": "redis",
"redis": {
"host": "localhost",
"port": 6379
}
}
}📊 监控护航与排错日志
指令快速查看相关日志
# 实时跟踪流打印的日志输出
openclaw logs --follow
# 紧急按出错级别拦截过滤
openclaw logs --level error
# 直接批量转储给维护团队排查验证
openclaw logs --export my-errors-logs.txt启用 Linux 日志切分轮替
向 Linux 系统注入一个文本切片机制 /etc/logrotate.d/openclaw:
/var/log/openclaw/*.log {
daily
rotate 7
compress
delaycompress
notifempty
create 0640 root root
sharedscripts
postrotate
systemctl reload openclaw
endscript
}监控机器核心指标
# 查看系统状态全览
openclaw status
# 查看接口调用等耗时与性能度量
openclaw metrics
# 查询机器当前分配硬件物理状态
openclaw stats📦 容灾配置备份与恢复
备份压缩配置包
# 把全部身家和主工作区目录打包冷藏
tar -czf openclaw-backup-$(date +%Y%m%d).tar.gz ~/.openclaw
# 将该文件上传到云储存备份源(如阿里云 OSS、腾讯云 COS 中)恢复覆盖配置内容
# 暴力解压并全面取代覆盖原用户的配置目录
tar -xzf openclaw-backup-20260304.tar.gz -C ~/
# 重启机器吸纳全新包配置设定
openclaw restart🛡️ 系统级别的安全加固保护
1. 配置物理防火墙
# 基于 ufw
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable2. 禁用超管 root 直接被远程登录
关闭不安全的 ssh 行径 /etc/ssh/sshd_config:
PermitRootLogin no3. 使用长串变态密钥代替裸密码认证
# 本地生成 RSA 高级密钥对
ssh-keygen -t rsa -b 4096
# 将公钥强推入并锚定锁定目标主机
ssh-copy-id user@server-ip4. 保持依赖包与运行环境持续更新
# Linux 系统安全包同步修补
apt-get update && apt-get upgrade
# 全量更新主应用本体
npm update -g openclaw🩹 全套故障排查
服务完全哑火跑不起来
# 让控制台帮你吐出错误明细
journalctl -u openclaw -n 50
# 看下是谁把网关占领了坑位
netstat -tulpn | grep 18789
# 测试是不是单纯 json 配置符号缩进写乱了
openclaw config validate云机器突然卡死内存不足
# 透支磁盘空间以虚拟缓冲当成临时内存顶着
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile突然失联网断气
# 内网探针请求
curl http://localhost:18789
# 是不是系统级的底层安全把内循环掐黑了
iptables -L -n
# 到达目的地的指引路径丢失没
nslookup your-domain.com💸 具体真钱成本估算(每月预估)
腾讯云轻量应用服务器配置:
- 入门款 2核2G:约 ¥20-50/月(新用户活动骨折价)
- 进阶款 2核4G:约 ¥50-100/月
阿里云 ECS 常规系列配置:
- 入口 2核2G:约 ¥30-60/月
- 中配 2核4G:约 ¥60-120/月
模型基座调用的聪明程度花销:
- 中国境内百亿模型列阵:约 ¥0.001-0.015 / 1K tokens
- 国外第一梯队巨兽:约 $0.001-0.015 (USD) / 1K tokens
综计粗略月度开销:服务器月花销 ¥50 + 模型耗费量 ¥50-200 = 总额在**¥100 到 ¥250/月**区间左右。
🏆 脱坑的最佳实践建议
- 上云别找小破烂机器:7*24小时不掉线的服务,必须建立在强硬基础设施云上。
- 挂好 HTTPS 保险:特别是做机器人外网勾连传输交互这层防伪必须做足。
- 监控永远不是摆设:如果没时间自己弄就加上系统服务自带的异常自愈启动
restart。 - 备份是王道:你的整个世界和定制插件参数全在那个不到几百KB的文件里面。
- 别被 Token 吃穷了:后台管理记得加上每天金额花费上限触发熔断策略保护。