Hetzner
安価な Hetzner VPS (Docker) で 24/7 OpenClaw Gateway を実行(永続化状態と組み込みバイナリ)
Goal
Hetzner VPS で Docker を使用して永続的な OpenClaw Gateway を実行し、永続化された状態、組み込みバイナリ、安全な再起動動作を提供します。
"OpenClaw 24/7、約 $5" を希望する場合、これが最も簡単な信頼できる設定です。
Hetzner の価格は変動します。最小の Debian/Ubuntu VPS を選択し、OOM に遭遇した場合はスケールアップしてください。
何をしているのか(簡単な用語)?
- 小さな Linux サーバーをレンタルする(Hetzner VPS)
- Docker をインストールする(分離されたアプリランタイム)
- Docker で OpenClaw Gateway を起動する
- ホスト上で ''~/.openclaw'' + ''~/.openclaw/workspace'' を永続化する(再起動/再構築後に存続)
- SSH トンネル経由でラップトップからコントロール UI にアクセスする
Gateway は以下の方法でアクセスできます:
- ラップトップからの SSH ポートフォワーディング
- ファイアウォールとトークンを自分で管理する場合の直接ポート公開
このガイドでは Hetzner で Ubuntu または Debian を使用することを想定しています。
他の Linux VPS を使用している場合、パッケージを適切にマッピングしてください。
汎用の Docker フローについては、''Docker''を参照してください。
必要なもの
- root アクセス権のある Hetzner VPS
- ラップトップからの SSH アクセス
- SSH + コピー/貼り付けの基本的な操作
- ~20 minutes
- Docker と Docker Compose
- モデル認証情報
- オプションのプロバイダー認証情報
- WhatsApp QR
- Telegram ボットトークン
- Gmail OAuth
2) Docker をインストールする(VPS 上)
apt-get update apt-get install -y git curl ca-certificates curl -fsSL https://get.docker.com | sh
Verify:
docker --version docker compose version
4) 永続的なホストディレクトリを作成する
Docker コンテナは一時的です。
すべての長期間の状態はホスト上に存在する必要があります。
mkdir -p /root/.openclaw mkdir -p /root/.openclaw/workspace chown -R 1000:1000 /root/.openclaw chown -R 1000:1000 /root/.openclaw/workspace
6) Docker Compose configuration
''docker-compose.yml'' を作成または更新します。
services:
openclaw-gateway:
image: ${OPENCLAW_IMAGE}
build: .
restart: unless-stopped
env_file:
- .env
environment:
- HOME=/home/node
- NODE_ENV=production
- TERM=xterm-256color
- 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}
- PATH=/home/linuxbrew/.linuxbrew/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
volumes:
- ${OPENCLAW_CONFIG_DIR}:/home/node/.openclaw
- ${OPENCLAW_WORKSPACE_DIR}:/home/node/.openclaw/workspace
ports:
# 推奨:VPS 上で Gateway をループバックのみにし、SSH トンネル経由でアクセスします。
# 公開するには、`127.0.0.1:` プレフィックスを削除し、ファイアウォールを適切に設定します。
- "127.0.0.1:${OPENCLAW_GATEWAY_PORT}:18789"
# オプション:この VPS に対して iOS/Android ノードを実行し、Canvas ホストが必要な場合のみ。
# 公開する場合は、/gateway/security を読み、ファイアウォールを適切に設定します。
# - "18793:18793"
command:
[
"node",
"dist/index.js",
"gateway",
"--bind",
"${OPENCLAW_GATEWAY_BIND}",
"--port",
"${OPENCLAW_GATEWAY_PORT}",
]8) ビルドと起動
docker compose build docker compose up -d openclaw-gateway
バイナリを検証します:
docker compose exec openclaw-gateway which gog docker compose exec openclaw-gateway which goplaces docker compose exec openclaw-gateway which wacli
期待される出力:
/usr/local/bin/gog /usr/local/bin/goplaces /usr/local/bin/wacli
何がどこで永続化されるか(真実の情報源)
OpenClaw は Docker で実行されますが、Docker は真実の情報源ではありません。
すべての長期間の状態は、再起動、再構築、再起動後に存続する必要があります。
| コンポーネント | 位置 | 永続化メカニズム | 備考 |
| Gateway 設定 | ''/home/node/.openclaw/'' | ホストボリュームマウント | ''openclaw.json''、トークンを含む |
| モデル認証プロファイル | ''/home/node/.openclaw/'' | ホストボリュームマウント | OAuth トークン、API キー |
| スキル設定 | ''/home/node/.openclaw/skills/'' | ホストボリュームマウント | スキルレベルの状態 |
| エージェントワークスペース | ''/home/node/.openclaw/workspace/'' | ホストボリュームマウント | コードとエージェントアーティファクト |
| WhatsApp セッション | ''/home/node/.openclaw/'' | ホストボリュームマウント | QR ログインを保存 |
| Gmail キーリング | ''/home/node/.openclaw/'' | ホストボリューム + パスワード | ''GOG_KEYRING_PASSWORD'' が必要 |
| 外部バイナリ | ''/usr/local/bin/'' | Docker イメージ | ビルド時に焼き込む必要 |
| Node ランタイム | コンテナファイルシステム | Docker イメージ | イメージビルドごとに再構築 |
| OS パッケージ | コンテナファイルシステム | Docker イメージ | 実行時にインストールしない |
| Docker コンテナ | 一時的 | 再起動可能 | 安全に破棄可能 |