方案概述
Hetzner 是欧洲主流 VPS 提供商,入门机型性价比极高(月费约 $5)。本方案使用 Docker Compose 运行 OpenClaw Gateway,配合持久化目录和自动重启策略,将 VPS 作为有状态的长期基础设施运营,而非一次性容器。全程约需 20 分钟完成部署。
前置条件
- Hetzner VPS,操作系统为 Ubuntu 或 Debian,已开启 root SSH 访问
- 模型提供商 API Key
- 可选:WhatsApp、Telegram、Gmail OAuth 等渠道凭据
第一步:安装 Docker
apt-get update
apt-get install -y git curl ca-certificates
curl -fsSL https://get.docker.com | sh
docker --version
docker compose version
第二步:克隆仓库并创建持久化目录
git clone https://github.com/openclaw/openclaw.git
cd openclaw
mkdir -p /root/.openclaw/workspace
chown -R 1000:1000 /root/.openclaw
这两个目录在容器重启和重建后依然保留状态,是 Gateway 的持久化存储根目录。
第三步:创建环境变量文件
在项目目录下创建 .env 文件:
OPENCLAW_IMAGE=openclaw:latest
OPENCLAW_GATEWAY_TOKEN=<用 openssl rand -hex 32 生成>
OPENCLAW_GATEWAY_BIND=lan
OPENCLAW_GATEWAY_PORT=18789
OPENCLAW_CONFIG_DIR=/root/.openclaw
OPENCLAW_WORKSPACE_DIR=/root/.openclaw/workspace
GOG_KEYRING_PASSWORD=<用 openssl rand -hex 32 生成>
XDG_CONFIG_HOME=/home/node/.openclaw
安全提醒:
.env文件包含密钥,绝对不要提交到 Git 仓库。
第四步:配置 Docker Compose
创建 docker-compose.yml:
services:
openclaw-gateway:
image: ${OPENCLAW_IMAGE}
build: .
restart: unless-stopped
env_file:
- .env
environment:
- HOME=/home/node
- NODE_ENV=production
- OPENCLAW_GATEWAY_BIND=${OPENCLAW_GATEWAY_BIND}
- OPENCLAW_GATEWAY_PORT=${OPENCLAW_GATEWAY_PORT}
- OPENCLAW_GATEWAY_TOKEN=${OPENCLAW_GATEWAY_TOKEN}
- GOG_KEYRING_PASSWORD=${GOG_KEYRING_PASSWORD}
- XDG_CONFIG_HOME=${XDG_CONFIG_HOME}
volumes:
- ${OPENCLAW_CONFIG_DIR}:/home/node/.openclaw
- ${OPENCLAW_WORKSPACE_DIR}:/home/node/.openclaw/workspace
ports:
- "127.0.0.1:${OPENCLAW_GATEWAY_PORT}:18789"
command:
- "node"
- "dist/index.js"
- "gateway"
- "--bind"
- "${OPENCLAW_GATEWAY_BIND}"
- "--port"
- "${OPENCLAW_GATEWAY_PORT}"
- "--allow-unconfigured"
注意 ports 配置为 127.0.0.1:18789:18789——Gateway 仅监听 loopback,不对外网暴露。
第五步:构建并启动
docker compose build
docker compose up -d
docker compose logs -f
远程访问控制台
在本地机器上建立 SSH 端口转发:
ssh -N -L 18789:127.0.0.1:18789 root@YOUR_VPS_IP
浏览器访问 http://127.0.0.1:18789/,输入 Gateway Token 登录控制台。
基础设施即代码(可选)
社区维护了两个 Terraform 仓库可实现全自动化部署:
openclaw-terraform-hetzner:VPS 创建、安全加固、防火墙配置openclaw-docker-config:容器编排配置
功能包括远程状态管理、cloud-init 自动化、灾难恢复脚本等,适合需要版本化管理基础设施的团队。
安全与隔离原则
- 团队内部共用 Gateway 时,确保所有人在同一信任边界内,且运行时仅用于工作用途
- 不同业务或不同信任级别的用户应使用独立的 VPS 实例
- Gateway 始终保持 loopback 绑定,通过 SSH 隧道或 Tailscale 访问,避免公网暴露