当然。以下是完整、可直接执行、基于 OpenClaw 最新稳定版本 v2026.3.8 的单机生产环境 Docker 部署指南,包含所有必要步骤、配置文件和命令,无任何省略。
OpenClaw 是一个本地优先、可自托管的 AI 执行引擎,能通过自然语言指令自主完成任务(如文件处理、邮件收发、代码生成等)。v2026.3.8 是当前最稳定的生产级版本,新增官方备份机制与多项稳定性修复。
# 安装 Docker(使用毫秒镜像源,国内最快)
bash <(curl -fsSL https://docker.1ms.run/get-docker.sh)
# 安装 Docker Compose(若未自动安装)
sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-composeopenclaw.example.com)及 SSL 证书# 拉取官方最新稳定版
docker pull docker.1ms.run/alpine/openclaw:v2026.3.8
# 为镜像打上本地语义化标签(便于维护)
docker tag docker.1ms.run/alpine/openclaw:v2026.3.8 openclaw:prod-v2026.3.8✅ 其他可用源(备用): # 轩辕镜像 docker pull docker.xuanyuan.run/alpine/openclaw:v2026.3.8 # 1Panel 镜像 docker pull docker.1panel.live/alpine/openclaw:v2026.3.8
# 创建项目根目录
sudo mkdir -p /opt/openclaw/{config,logs,data,backups}
sudo chown -R $USER:$USER /opt/openclaw
cd /opt/openclaw
# 创建 .gitignore(防止敏感信息提交)
cat > .gitignore << 'EOF'
.env
*.log
config/*
data/*
backups/*
EOF
# 生成高强度访问令牌并写入 .env
cat > .env << EOF
OPENCLAW_TOKEN=$(openssl rand -hex 32)
OPENCLAW_IMAGE=openclaw:prod-v2026.3.8
EOF
# 严格限制 .env 文件权限(关键安全措施)
chmod 600 .env创建文件 docker-compose.prod.yml:
version: '3.8'
volumes:
openclaw_home: {}
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
ports:
- "127.0.0.1:18789:18789"
mem_limit: 2g
cpus: 2
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"💡 说明:
openclaw_home 卷持久化所有核心数据(配置、技能、记忆、工作区)。127.0.0.1,禁止公网直连。创建 /etc/nginx/sites-available/openclaw:
server {
listen 443 ssl http2;
server_name openclaw.example.com; # ← 替换为你的实际域名
ssl_certificate /etc/letsencrypt/live/openclaw.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/openclaw.example.com/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;
add_header Strict-Transport-Security "max-age=31536000" always;
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;
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;
}
}
server {
listen 80;
server_name openclaw.example.com; # ← 替换为你的实际域名
return 301 https://$host$request_uri;
}启用站点并重载 Nginx:
sudo ln -s /etc/nginx/sites-available/openclaw /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx🔐 SSL 证书获取(若未配置): sudo apt install certbot python3-certbot-nginx -y sudo certbot --nginx -d openclaw.example.com
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw deny 18789/tcp # 禁止直接访问 Gateway 端口
sudo ufw enable# 启动容器
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# 在容器内创建备份
docker exec openclaw-gateway-prod openclaw backup create --name initial-setup-$(date +%Y%m%d)
# 验证备份完整性
docker exec openclaw-gateway-prod openclaw backup verify --name initial-setup-$(date +%Y%m%d)
# (可选)将备份文件复制到主机长期保存
BACKUP_NAME=$(docker exec openclaw-gateway-prod ls /home/node/.openclaw/backups | grep initial-setup)
docker cp openclaw-gateway-prod:/home/node/.openclaw/backups/$BACKUP_NAME ./backups/📌 重要:此备份包含所有配置、技能、记忆和渠道状态,是灾难恢复的关键。
docker compose -f docker-compose.prod.yml run --rm openclaw-gateway channels add --channel telegram --token "YOUR_TELEGRAM_BOT_TOKEN"docker compose -f docker-compose.prod.yml run --rm openclaw-gateway channels logindocker compose -f docker-compose.prod.yml run --rm openclaw-gateway channels add --channel discord --token "YOUR_DISCORD_BOT_TOKEN"# 1. 创建升级前备份
docker exec openclaw-gateway-prod openclaw backup create --name pre-upgrade-$(date +%Y%m%d)
# 2. 拉取新版本镜像(例如 v2026.3.9)
# docker pull docker.1ms.run/alpine/openclaw:v2026.3.9
# docker tag ... openclaw:prod-v2026.3.9
# 3. 更新 .env 中的 OPENCLAW_IMAGE
# sed -i 's/prod-v2026.3.8/prod-v2026.3.9/' .env
# 4. 重新拉取并重启
docker compose -f docker-compose.prod.yml pull
docker compose -f docker-compose.prod.yml up -d
# 5. 验证
docker compose -f docker-compose.prod.yml logs -f
本指南提供了从零开始部署 OpenClaw 的完整、可执行方案,涵盖:
按照上述步骤操作,您将获得一个安全、稳定、可长期运维的 OpenClaw 生产实例,真正实现“本地 AI 数字员工”的价值。