Hetznerの紹介
Hetznerはドイツの老舗クラウドサービスプロバイダーで、非常に高いコストパフォーマンスで知られています。ヨーロッパにあるCX22インスタンス(2コア4GBメモリ)は月額わずか数ユーロで、OpenClawのようなAIエージェントゲートウェイのデプロイに最適です。本記事では、Hetzner Cloud上でDocker Composeを使ってOpenClawをデプロイする方法を詳しく解説します。
Hetznerクラウドサーバーの作成
Hetzner Cloud Console(console.hetzner.cloud)にログインし、新しいプロジェクトの作成、または既存プロジェクトへのサーバー追加をクリックします。
サーバー構成の選択
- ロケーション:ユーザーの分布に応じて選択(例:Falkenstein(ドイツ)、Helsinki(フィンランド)、Ashburn(アメリカ))
- イメージ:Ubuntu 24.04 LTSを選択
- タイプ:CX22(2 vCPU、4GB RAM)以上を推奨
- SSHキー:安全なログインのために公開鍵を追加
- ネットワーク:IPv4とIPv6を有効化
作成完了後、サーバーのパブリックIPアドレスを控えてください。
サーバーへの接続とDockerのインストール
SSHで新しいサーバーに接続します。
ssh root@あなたのサーバーIP
まずシステムを更新し、Dockerをインストールします。
apt update && apt upgrade -y
apt install -y ca-certificates curl gnupg
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list
apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
Dockerのインストール確認:
docker --version
docker compose version
プロジェクトディレクトリの作成
OpenClaw用の専用ディレクトリを作成します。
mkdir -p /opt/openclaw
cd /opt/openclaw
Docker Compose設定の作成
docker-compose.yml ファイルを作成します。
version: "3.8"
services:
openclaw:
image: node:22-slim
container_name: openclaw-gateway
restart: unless-stopped
working_dir: /app
volumes:
- openclaw_config:/root/.openclaw
- openclaw_app:/app
ports:
- "3000:3000"
environment:
- NODE_ENV=production
command: >
bash -c "
npm install -g openclaw@latest &&
openclaw start
"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/health"]
interval: 30s
timeout: 10s
retries: 3
volumes:
openclaw_config:
openclaw_app:
この設定ファイルはNode.js 22ベースのコンテナを定義し、最新版OpenClawを自動インストールしてサービスを起動します。名前付きボリューム openclaw_config を使用してOpenClawの設定ディレクトリ ~/.openclaw を永続化し、コンテナ再起動時に設定データが失われないようにしています。
ここではBunランタイムを使用していません。Bunは一部のシーンでより高速ですが、WhatsAppやTelegramのWebSocket接続処理に既知のバグがあるため、OpenClaw公式はNode.jsの使用を推奨しています。
サービスの起動
以下のコマンドでOpenClawを起動します。
docker compose up -d
コンテナログで起動状態を確認します。
docker compose logs -f openclaw
初回起動時はコンテナがまずOpenClawをインストールするため、1-2分かかる場合があります。サービス起動成功のログが表示されたら、Ctrl+C でログ表示を終了します。
OpenClaw設定の初期化
実行中のコンテナに入って初期化を実行します。
docker compose exec openclaw bash
コンテナ内でガイドプログラムを実行します。
openclaw onboard --install-daemon
インタラクティブなプロンプトに従って以下の設定を完了します。
- AIモデルプロバイダーの選択と設定(OpenAI、Anthropicなど)
- 接続するチャットプラットフォームの設定(WhatsApp、Telegram、Discordなど)
- Webhook URLと関連認証情報の設定
完了後、診断コマンドですべてが正常かチェックします。
openclaw doctor
コンテナから退出します。
exit
ファイアウォールの設定
Hetzner Cloudには内蔵のファイアウォール機能があります。Cloud Consoleで以下のルールを設定します。
- SSH:TCP 22ポートのインバウンドを許可
- HTTP:TCP 80ポートのインバウンドを許可
- HTTPS:TCP 443ポートのインバウンドを許可
- OpenClaw Dashboard:TCP 3000ポートのインバウンドを許可(またはリバースプロキシ経由で転送)
サーバー上でUFWを使って設定することもできます。
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw allow 3000/tcp
ufw enable
Nginxリバースプロキシの設定(推奨)
HTTPSの有効化とセキュリティ向上のため、Nginxリバースプロキシの設定を推奨します。
apt install -y nginx certbot python3-certbot-nginx
Nginx設定ファイル /etc/nginx/sites-available/openclaw を作成します。
server {
server_name openclaw.yourdomain.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
設定の有効化とSSL証明書の取得:
ln -s /etc/nginx/sites-available/openclaw /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d openclaw.yourdomain.com
OpenClawの自動更新
シンプルな更新スクリプト /opt/openclaw/update.sh を作成します。
#!/bin/bash
cd /opt/openclaw
docker compose down
docker compose pull
docker compose up -d
docker compose exec -T openclaw npm install -g openclaw@latest
docker compose restart openclaw
cronに追加して定期的な自動更新を設定します。
chmod +x /opt/openclaw/update.sh
crontab -e
# 以下の行を追加、毎週日曜午前3時に自動更新
0 3 * * 0 /opt/openclaw/update.sh >> /var/log/openclaw-update.log 2>&1
バックアップ戦略
OpenClawの重要なデータは ~/.openclaw/ ディレクトリに保存されています。Hetznerのスナップショット機能でサーバー全体をバックアップすることも、設定ファイルを手動でバックアップすることもできます。
docker compose exec -T openclaw tar czf - /root/.openclaw > /opt/openclaw/backup-$(date +%Y%m%d).tar.gz
まとめ
Hetzner CloudとDocker Composeの組み合わせは、OpenClawをデプロイするコストパフォーマンスの高い方法です。本記事の設定により、安定稼働するOpenClaw AIエージェントゲートウェイを構築し、各種チャットプラットフォームとAIモデルを接続できます。Hetznerはヨーロッパのデータセンターでヨーロッパのユーザーに特に有利であり、アメリカのノードもグローバルデプロイのニーズに対応できます。