第5课:服务器部署(24/7)#

为什么需要这个#

如果 OpenClaw 运行在你的笔记本电脑上,合上盖子就会关闭。要让助手全天候可用,需要在服务器上运行 — 一台始终开着的电脑。可以是每月约5美元的云服务器。

部署方式#

方式 难度 费用 适合人群
Hetzner VPS + Docker 中等 ~$5/月 最受欢迎的方式
Fly.io ~$5/月 无需 SSH 的快速启动
任意 VPS 中等 $3-10/月 DigitalOcean、Oracle 等
家庭服务器 $0 树莓派、旧电脑

方式1:Hetzner VPS + Docker(推荐)#

准备工作#

  • hetzner.com 账户
  • 基本的终端操作知识
  • 约20分钟

步骤1:租用服务器#

在 Hetzner 选择最便宜的 Ubuntu 或 Debian VPS。最低配置即可。

步骤2:通过 SSH 连接#

SSH(Secure Shell)是通过终端远程控制服务器的方式。

ssh root@你的IP地址

步骤3:安装 Docker#

Docker 是在隔离容器中运行应用程序的软件。

apt update && apt install -y docker.io docker-compose-v2

步骤4:下载 OpenClaw#

git clone https://github.com/openclaw/openclaw.git
cd openclaw

步骤5:运行安装脚本#

./docker-setup.sh

脚本会自动:

  • 构建 Docker 镜像
  • 启动初始设置向导
  • 创建安全访问令牌
  • 启动 Gateway

步骤6:验证运行状态#

docker compose exec openclaw-gateway node dist/index.js health --token "$OPENCLAW_GATEWAY_TOKEN"

步骤7:浏览器访问#

从你的笔记本创建 SSH 隧道:

ssh -N -L 18789:127.0.0.1:18789 root@你的IP地址

现在在浏览器中打开 http://127.0.0.1:18789/ — 你会看到控制面板。

方式2:Fly.io#

Fly.io 是一个简化部署的云平台。不需要手动配置服务器。

步骤1:安装 flyctl#

curl -L https://fly.io/install.sh | sh

步骤2:创建应用#

git clone https://github.com/openclaw/openclaw.git
cd openclaw

fly apps create my-openclaw
fly volumes create openclaw_data --size 1 --region iad

步骤3:设置密钥#

fly secrets set ANTHROPIC_API_KEY=你的密钥
fly secrets set OPENCLAW_GATEWAY_TOKEN=你的令牌
fly secrets set TELEGRAM_BOT_TOKEN=你的机器人令牌

步骤4:部署#

fly deploy

Fly.io 会自动:

  • 构建镜像
  • 部署到服务器
  • 配置 HTTPS
  • 故障时重启

方式3:任意 VPS + Docker#

适用于任何 VPS 提供商(DigitalOcean、Oracle、Vultr 等)的通用步骤:

  1. 租一台 Ubuntu/Debian 服务器
  2. 安装 Docker
  3. 克隆 OpenClaw 仓库
  4. 运行 ./docker-setup.sh
  5. 设置自动重启(Docker Compose 会自动处理)

重要的服务器设置#

数据存储#

OpenClaw 的所有数据存储在 ~/.openclaw/ 中。确保这个文件夹在永久磁盘上(不是临时内存)。

使用 Docker 时,数据从宿主机挂载:

volumes:
  - ~/.openclaw:/home/node/.openclaw
  - ~/.openclaw/workspace:/home/node/.openclaw/workspace

在 Docker 中配置频道#

# WhatsApp(二维码)
docker compose run --rm openclaw-cli channels login

# Telegram
docker compose run --rm openclaw-cli channels add --channel telegram --token "你的令牌"

# Discord
docker compose run --rm openclaw-cli channels add --channel discord --token "你的令牌"

文件权限#

OpenClaw Docker 镜像以 node 用户(uid 1000)运行。如果看到权限错误:

sudo chown -R 1000:1000 ~/.openclaw

额外软件包#

如果容器内需要系统程序:

export OPENCLAW_DOCKER_APT_PACKAGES="ffmpeg git curl"
./docker-setup.sh

自动重启#

Docker Compose 会在故障时自动重启容器。要在服务器启动时自动运行:

systemctl enable docker

检查状态:

docker compose ps
docker compose logs --tail 50

课程总结#

  • 要实现24/7运行,需要在服务器(VPS)上部署 OpenClaw
  • Hetzner + Docker — 最受欢迎且实惠的方式(~$5/月)
  • Fly.io — 最简单的方式,无需配置服务器
  • 使用 ./docker-setup.sh 自动配置
  • 数据存储在 ~/.openclaw/ — 别忘了备份
  • SSH 隧道可以从浏览器安全地管理服务器