openclaw-guide-csdn
《阿里云部署OpenClaw完全指南》是一篇技术教程,详细介绍了如何在阿里云轻量服务器上自主部署OpenClaw服务,摆脱官方百炼平台的模型限制。文章从硬件准备、系统初始化开始,逐步指导完成Docker安装、OpenClaw容器部署、配置文件修改等关键步骤,重点讲解了如何自由接入StepFun、DeepSeek、OpenAI等多种模型API。针对2G内存服务器的性能瓶颈,提供了Swap配置等优化方
阿里云从零部署 OpenClaw 完全指南:摆脱百炼锁定,自由选择模型
作为阿里云百炼 OpenClaw(龙虾AI)最早一批用户,我深度体验了几个月后发现一个问题:只能用百炼提供的模型,想用 DeepSeek、StepFun、OpenAI?没门。 不服气,决定自己动手,从零在阿里云轻量服务器上重新部署,接上自己喜欢的模型。这篇教程就是整个过程的完整记录,包括踩过的每一个坑。
一、为什么这么做?
阿里云百炼版 OpenClaw 的优点是开箱即用,但限制也很明显:
- 模型绑定百炼生态,无法自由切换
- 部分高级功能受限于百炼套餐
- 想接入第三方 API(StepFun、DeepSeek 等)走不通
官方 OpenClaw 是开源的,支持任何 OpenAI 兼容的 API。所以思路很简单:买台服务器,用 Docker 跑官方版,配置自己的 API。
二、硬件准备
我选的是阿里云轻量应用服务器(够用就行):
| 项目 | 配置 |
|---|---|
| 地域 | 华北2(北京) |
| CPU | 2 核 |
| 内存 | 2 GB |
| 硬盘 | 40 GB SSD |
| 带宽 | 200 Mbps |
| 系统 | Ubuntu 22.04 |
提示:2G 内存跑 OpenClaw 比较紧张,后面会说怎么优化。如果你预算够,建议直接 4G。
三、系统初始化
拿到一台全新的 Ubuntu 服务器后,先做基础设置:
# 更新系统
apt update && apt upgrade -y
# 安装必要工具
apt install -y curl wget git vim htop
# 设置时区
timedatectl set-timezone Asia/Shanghai
四、安装 Docker
# 安装 Docker(官方一键脚本)
curl -fsSL https://get.docker.com | sh
# 启动 Docker 并设为开机自启
systemctl start docker
systemctl enable docker
# 验证安装
docker --version
五、部署 OpenClaw
5.1 创建数据目录
OpenClaw 的所有数据(配置、会话等)需要一个持久化目录,我们用 bind mount 挂载到宿主机:
mkdir -p /root/openclaw-data
5.2 启动容器
docker run -d \
--name openclaw \
--restart unless-stopped \
--memory=1200m \
--memory-swap=2400m \
-p 18789:18789 \
-v /root/openclaw-data:/home/node \
ghcr.io/openclaw/openclaw:latest
参数说明:
--memory=1200m --memory-swap=2400m:限制内存使用,防止 OOM(2G 机器必加)-p 18789:18789:Web 管理界面端口-v /root/openclaw-data:/home/node:数据持久化
5.3 验证运行
docker logs -f openclaw
看到日志正常输出,说明启动成功。
六、基础配置
OpenClaw 的配置文件在 /root/openclaw-data/.openclaw/openclaw.json(宿主机路径)。
⚠️ 修改配置的正确姿势
千万不要用 docker cp 把文件复制进容器! 这会改变文件的 owner,容器内的 node 用户(UID 1000)读不了。
正确流程:
# 1. 停止容器
docker stop openclaw
# 2. 直接在宿主机编辑配置文件
vim /root/openclaw-data/.openclaw/openclaw.json
# 3. 修复权限
chmod 644 /root/openclaw-data/.openclaw/openclaw.json
# 4. 启动容器
docker start openclaw
6.1 设置认证 Token
编辑 openclaw.json,关键配置如下:
{
"meta": {
"lastTouchedVersion": "2026.4.24",
"lastTouchedAt": "2026-04-28T07:50:00.000Z"
},
"gateway": {
"auth": {
"mode": "token",
"token": "你自己生成一个随机字符串"
},
"controlUi": {
"allowedOrigins": ["http://你的IP:18789", "https://你的域名"],
"allowInsecureAuth": true
},
"mode": "local",
"port": 18789,
"bind": "lan"
}
}
七、配置模型 API(核心步骤)
这里以 StepFun(阶跃星辰) 为例,你也可以换成 DeepSeek、OpenAI 等任何 OpenAI 兼容的 API。
在 openclaw.json 中添加 models 配置:
{
"models": {
"defaultModel": "stepfun-plan/step-3.5-flash",
"providers": {
"stepfun": {
"type": "openai-compatible",
"baseUrl": "https://api.stepfun.com/step_plan/v1",
"apiKey": "你的 StepFun API Key"
}
}
}
}
其他模型示例
DeepSeek:
{
"providers": {
"deepseek": {
"type": "openai-compatible",
"baseUrl": "https://api.deepseek.com/v1",
"apiKey": "你的 DeepSeek API Key"
}
},
"defaultModel": "deepseek/deepseek-chat"
}
OpenAI:
{
"providers": {
"openai": {
"type": "openai-compatible",
"baseUrl": "https://api.openai.com/v1",
"apiKey": "你的 OpenAI API Key"
}
},
"defaultModel": "openai/gpt-4o"
}
想用哪个模型,改 defaultModel 就行,随时切换,自由自在。
八、配置 QQ Bot
OpenClaw 支持通过 QQ Bot 通信,配置步骤:
8.1 申请 QQ Bot
- 前往 QQ 开放平台 注册开发者账号
- 创建机器人应用,获取 AppID 和 AppSecret
- 配置 WebSocket 回调地址
8.2 在配置文件中添加 channels
{
"channels": {
"qqbot": {
"appId": "你的QQ Bot AppID",
"appSecret": "你的QQ Bot AppSecret",
"enabled": true
}
}
}
8.3 权限审批踩坑
新设备首次连接时,QQ Bot 会出现权限升级审批请求,如果一直卡在 pending 状态形成死循环,可以这样解决:
# 进入容器
docker exec -it openclaw bash
# 查看 pending 请求
cat /home/node/.openclaw/pending.json
# 直接编辑 paired.json 添加设备
vim /home/node/.openclaw/paired.json
# 删除 pending 请求打破死循环
rm /home/node/.openclaw/pending.json
九、域名与 HTTPS
直接用 IP:端口 访问不够优雅,配个域名 + HTTPS。
9.1 域名准备
在阿里云(或其他域名注册商)购买域名,添加 A 记录指向服务器 IP。
9.2 安装 Caddy
Caddy 是目前最简单的 HTTPS 方案,自动申请和续期 Let’s Encrypt 证书:
apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
apt update && apt install -y caddy
9.3 配置 Caddy
编辑 /etc/caddy/Caddyfile:
openclaw.你的域名.com {
reverse_proxy localhost:18789
}
# 重启 Caddy
systemctl restart caddy
systemctl enable caddy
打开浏览器访问 https://openclaw.你的域名.com,HTTPS 自动生效。
十、性能优化(2G 内存必看)
2G 内存跑 OpenClaw + Caddy 确实紧张,做了以下优化:
10.1 添加 Swap
# 创建 2G swap 文件
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
# 写入 fstab,重启后自动挂载
echo '/swapfile none swap sw 0 0' >> /etc/fstab
10.2 Docker 内存限制
启动容器时加上参数(前面已经加了):
--memory=1200m --memory-swap=2400m
10.3 禁用 bonjour 插件
Docker 容器内 mDNS 不兼容,bonjour 插件会导致崩溃循环,必须禁用:
{
"plugins": {
"bonjour": {
"enabled": false
}
}
}
十一、踩坑总结
这些坑都是实打实踩过的,希望你能绕过去:
坑 1:配置文件被自动还原
现象:修改了 openclaw.json,重启后配置又变回去了,日志里看到 missing-meta-vs-last-good。
原因:OpenClaw 有配置保护机制,如果配置文件缺少 meta 字段,会自动从备份恢复。
解决:每次修改配置,必须包含 meta 字段:
{
"meta": {
"lastTouchedVersion": "2026.4.24",
"lastTouchedAt": "当前ISO时间"
}
}
坑 2:auth.mode 设成 trusted-proxy 导致启动失败
现象:Gateway 启动失败,日志疯狂报错 no trustedProxy config was provided。
原因:trusted-proxy 模式需要额外配置 trustedProxy 字段,缺了就挂。
解决:老老实实用 token 模式:
{
"auth": { "mode": "token", "token": "你的token" }
}
坑 3:docker cp 导致权限问题
现象:通过 docker cp 复制配置文件进容器后,OpenClaw 读不到配置。
原因:docker cp 会把文件 owner 改成 root,容器内 node 用户(UID 1000)没权限读。
解决:不要用 docker cp,直接在宿主机的 bind mount 目录里编辑,然后 chmod 644。
坑 4:allowInsecureAuth 不生效
现象:设了 allowInsecureAuth: true,新浏览器访问还是要设备配对。
原因:当前版本的 OpenClaw 对浏览器设备配对有强制要求,这个字段没有实际效果。
解决:通过 QQ Bot 授权,或者手动编辑容器内的 paired.json 添加设备。
坑 5:不要加 basePath
现象:加了 basePath 后,根路径返回 404。
解决:不要加 basePath,直接用根路径访问。
坑 6:龙虾自动 npm install 导致 OOM
现象:OpenClaw 在执行复杂任务时自动 npm install 安装依赖,2G 内存直接被吃光。
解决:遇到时用 kill -9 杀掉 npm 进程释放内存,配合 swap 和 Docker 内存限制缓解。
十二、最终效果
部署完成后,你得到的是:
- 一个完全自主的 AI 助手,可以随时切换任意模型
- 通过网页、QQ Bot 多渠道访问
- HTTPS 安全连接
- 数据完全在自己服务器上
从此告别百炼锁定,想用啥模型用啥模型。
附录:常用运维命令
# 查看日志
docker logs -f openclaw
# 重启 OpenClaw
docker restart openclaw
# 进入容器
docker exec -it openclaw bash
# 修改配置(完整流程)
docker stop openclaw
vim /root/openclaw-data/.openclaw/openclaw.json
chmod 644 /root/openclaw-data/.openclaw/openclaw.json
docker start openclaw
# 查看资源占用
docker stats openclaw
# 查看 swap 使用情况
free -h
# Caddy 日志
journalctl -u caddy -f
本文由实际部署经验整理而成,所有踩坑均为真实经历。希望能帮到同样想自己部署 OpenClaw 的朋友。有问题欢迎交流!
更多推荐


所有评论(0)