1. 登录服务器并更新系统
通过 SSH 连接到你的服务器,首先更新系统软件包。
# 连接到服务器(使用 Step 3 配置的别名)
ssh myserver
# 更新软件包列表和已安装软件
apt update && apt upgrade -y
# 安装常用工具
apt install -y curl wget vim git ufw
2. 安装 Node.js
OpenClaw 基于 Node.js 构建,需要先安装 Node.js 运行时环境。
# 安装 Node.js 20.x(LTS 版本)
curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
apt install -y nodejs
# 验证安装
node --version
npm --version
# 安装 pm2(进程管理器,用于守护 OpenClaw 服务)
npm install -g pm2
pm2 是 Node.js 的进程管理器,可以让你的应用后台运行、开机自启、自动重启崩溃的进程。生产环境部署 Node.js 应用的标准工具。
3. 安装 OpenClaw
通过 npm 全局安装 OpenClaw。
# 全局安装 OpenClaw
npm install -g openclaw
# 验证安装
openclaw --version
# 查看 OpenClaw 安装路径(后续配置会用到)
which openclaw
npm 全局安装的路径取决于 Node.js 的安装方式。如果 openclaw 命令提示 not found,可能需要将 npm 全局 bin 目录添加到 PATH 中:export PATH="$PATH:$(npm config get prefix)/bin"
4. 创建 OpenClaw 配置目录
创建存放配置文件和数据的目录。
# 创建 OpenClaw 工作目录
mkdir -p /opt/openclaw
cd /opt/openclaw
# 创建数据子目录
mkdir -p data logs
5. 编写配置文件
创建 OpenClaw 的配置文件,添加 Kimi 和 DeepSeek 两个模型后端。
# 创建配置文件
cat > /opt/openclaw/config.yaml << 'EOF'
server:
port: 3000
host: "0.0.0.0"
# API 密钥管理(OpenClaw 对外暴露的 Key)
api_keys:
- key: "sk-openclaw-your-custom-key"
name: "default"
models: ["*"]
# 上游模型提供商配置
providers:
# Kimi (Moonshot AI)
- name: "kimi"
base_url: "https://api.moonshot.cn/v1"
api_key: "${KIMI_API_KEY}"
models:
- id: "kimi-k1.5"
name: "Kimi K1.5"
- id: "moonshot-v1-128k"
name: "Kimi 128K"
# DeepSeek
- name: "deepseek"
base_url: "https://api.deepseek.com/v1"
api_key: "${DEEPSEEK_API_KEY}"
models:
- id: "deepseek-chat"
name: "DeepSeek V3"
- id: "deepseek-reasoner"
name: "DeepSeek R1"
# 路由策略
routing:
default_provider: "kimi"
fallback_enabled: true
EOF
cat /opt/openclaw/config.yaml
6. 设置环境变量(API Keys)
将真实的 Kimi 和 DeepSeek API Key 配置为环境变量。
# 创建环境变量文件
cat > /opt/openclaw/.env << 'EOF'
KIMI_API_KEY=sk-your-actual-kimi-api-key
DEEPSEEK_API_KEY=sk-your-actual-deepseek-api-key
EOF
# 设置文件权限,只允许 root 读取
chmod 600 /opt/openclaw/.env
# 验证
ls -la /opt/openclaw/.env
.env 文件包含真实的 API Key,是服务器上最敏感的文件之一。通过 chmod 600 确保只有 root 用户可以读取。切勿将其提交到 Git 仓库或展示给他人。
7. 获取 DeepSeek API Key
如果你还没有 DeepSeek API Key,按以下步骤获取:
- 访问 DeepSeek 开放平台
- 注册 / 登录账号(支持手机号)
- 进入「API Keys」页面
- 点击「创建 API Key」,复制生成的 Key
- 新用户通常有 ¥10 免费额度
获取后,将 /opt/openclaw/.env 文件中的 DEEPSEEK_API_KEY 替换为真实值。
8. 启动 OpenClaw
使用 pm2 启动 OpenClaw,实现后台运行和自动重启。
# 进入工作目录
cd /opt/openclaw
# 加载环境变量并启动 OpenClaw
export $(cat .env | xargs)
# 使用 pm2 启动(指定名称、端口、配置文件)
pm2 start $(which openclaw) --name openclaw -- -c /opt/openclaw/config.yaml
# 查看运行状态
pm2 status
# 查看日志
pm2 logs openclaw
# 按 Ctrl+C 退出日志查看,服务继续在后台运行
pm2 stop openclaw:停止服务pm2 restart openclaw:重启服务pm2 delete openclaw:删除进程pm2 logs openclaw:查看实时日志pm2 save:保存当前进程列表pm2 startup:配置开机自启
9. 配置开机自启
设置 pm2 开机自动启动 OpenClaw。
# 保存当前进程列表
pm2 save
# 生成开机启动脚本(根据提示执行输出的命令)
pm2 startup systemd
# 示例输出:
# [PM2] To setup the Startup Script, copy/paste the following command:
# sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u root --hp /root
# 复制并执行输出的命令
sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u root --hp /root
# 验证:重启服务器后 OpenClaw 会自动启动
# reboot
10. 配置防火墙
开放 OpenClaw 的端口(3000),同时保留 SSH 端口。
# 启用 UFW 防火墙
ufw default deny incoming
ufw default allow outgoing
# 允许 SSH(22 端口,必须保留,否则无法连接服务器)
ufw allow 22/tcp
# 允许 OpenClaw 端口
ufw allow 3000/tcp
# 如果你后续需要 HTTPS,也开放 443
# ufw allow 443/tcp
# 启用防火墙(确认提示时输入 y)
ufw enable
# 查看防火墙状态
ufw status
22 端口是 SSH 远程登录的唯一通道。如果在配置防火墙时意外关闭了 22 端口,你将无法连接服务器,只能通过腾讯云控制台的 VNC 救援登录来修复。务必确保 ufw allow 22/tcp 已执行。
11. 验证部署
在本地电脑上测试 OpenClaw 服务是否正常工作。
# 测试 OpenClaw 健康检查端点
curl http://YOUR_SERVER_IP:3000/health
# 如果返回类似 {"status":"ok"},说明服务正常
# 测试模型列表接口
curl -H "Authorization: Bearer sk-openclaw-your-custom-key" http://YOUR_SERVER_IP:3000/v1/models
# 测试聊天补全接口
curl -X POST http://YOUR_SERVER_IP:3000/v1/chat/completions -H "Content-Type: application/json" -H "Authorization: Bearer sk-openclaw-your-custom-key" -d '{\n "model": "kimi-k1.5",\n "messages": [{"role": "user", "content": "你好,OpenClaw!"}]\n }'
# 测试 OpenClaw 健康检查
Invoke-RestMethod -Uri "http://YOUR_SERVER_IP:3000/health"
# 测试聊天补全
$headers = @{
"Authorization" = "Bearer sk-openclaw-your-custom-key"
"Content-Type" = "application/json"
}
$body = @{
model = "kimi-k1.5"
messages = @(@{role = "user"; content = "你好,OpenClaw!"})
} | ConvertTo-Json
Invoke-RestMethod -Uri "http://YOUR_SERVER_IP:3000/v1/chat/completions" -Method POST -Headers $headers -Body $body
12. 配置 Kimi Code 使用 OpenClaw
修改 Kimi Code 的配置,让其通过你的 OpenClaw 服务器调用模型。
# 设置环境变量指向你的 OpenClaw 服务器
export KIMI_BASE_URL="http://YOUR_SERVER_IP:3000/v1"
export KIMI_API_KEY="sk-openclaw-your-custom-key"
# 永久设置(添加到 ~/.zshrc)
echo 'export KIMI_BASE_URL="http://YOUR_SERVER_IP:3000/v1"' >> ~/.zshrc
echo 'export KIMI_API_KEY="sk-openclaw-your-custom-key"' >> ~/.zshrc
source ~/.zshrc
# 重新启动 Kimi Code
cd ~/Projects/openclaw-test
kimi
# 现在 Kimi Code 的请求会通过你的 OpenClaw 服务器转发
# 你可以自由切换后端模型(Kimi / DeepSeek)
# 设置环境变量
$env:KIMI_BASE_URL = "http://YOUR_SERVER_IP:3000/v1"
$env:KIMI_API_KEY = "sk-openclaw-your-custom-key"
# 永久设置(用户级)
[Environment]::SetEnvironmentVariable("KIMI_BASE_URL", "http://YOUR_SERVER_IP:3000/v1", "User")
[Environment]::SetEnvironmentVariable("KIMI_API_KEY", "sk-openclaw-your-custom-key", "User")
# 重新启动 Kimi Code
cd C:\Projects\openclaw-test
kimi
🎉 部署完成!
恭喜!你已经完成了整个 OpenClaw 培训项目的全部六步操作。现在你的技术栈如下:
- ✅ 腾讯云 Ubuntu 22.04 服务器(广州)
- ✅ SSH 免密登录(别名
ssh myserver) - ✅ Kimi Code(本地 AI 编程助手)
- ✅ Claude Code(本地 AI 编程助手)
- ✅ Verge Clash(网络代理,订阅来自 y-too.net)
- ✅ OpenClaw(服务器上的 AI 网关,配置 Kimi + DeepSeek)
- 在 Kimi Code 中切换不同模型测试效果:
使用 DeepSeek R1 分析这段代码 - 在 OpenClaw 配置中添加更多模型(OpenAI、Claude、Gemini)
- 为 OpenClaw 配置 HTTPS(使用 Nginx + Let's Encrypt)
- 用
pm2 monit实时监控 OpenClaw 运行状态