Hermes Agent VPS $5 月運用完全マニュアル|Hetzner / Hostinger / Contabo 比較【2026年版】

株式会社Fyveの広報チームです。Hermes Agentを24時間稼働させたいが、Mac miniを買う初期投資は避けたい——そんな相談が、ここ数週間で急に増えてきました。私たちが実際に複数の小規模事業者向けに構築した構成を踏まえ、月額$5前後のVPS(仮想専用サーバー)でHermes Agentを安定運用する手順を完全マニュアルとしてまとめます。本記事では2026年6月時点の最新価格でHetzner / Hostinger / Contabo / Vultr / Linodeを比較し、Ubuntu 24.04 LTSでのセットアップ、Caddyによる独自ドメインのTLS化、夜間バックアップまで一気通貫で解説します。
なぜ Hermes Agent を VPS で運用するのか
Hermes Agentは、Telegram / Slack / メールなどから受け取った指示をClaude Code相当のエージェントに渡し、ファイル操作・コード生成・API呼び出しを24時間こなしてくれる自律型エージェントです。手元のMacでも動かせますが、「就寝中・外出中もエージェントを動かし続けたい」「家のIPと切り離した海外IPで動かしたい」となると、VPSの選択肢が現実的になります。
私たちがVPS構成を勧める理由は3つに集約されます。
- 初期投資ゼロ:月額$5〜から始められ、初月で合わなければ即解約できる。Mac mini購入(8〜12万円)と比べてキャッシュフローへの負担が小さい
- 海外IPによる安定性:OpenAI / Anthropic / DeepSeekのAPIエンドポイントが地理的に近く、夜間の自宅回線のゆらぎを受けない
- 24時間稼働を前提に設計されている:データセンター電源・冷却・ネットワーク冗長が初めから入っている
もちろん、ローカルLLMを完全に手元に閉じ込めたいケースや、長期的にはMac miniの方が安くなるケースもあります。その判断軸についてはMac mini版の運用コスト記事と、Hermes Agentコスト全体ガイドに切り分けています。本記事は「とにかく今すぐ・最小コストで動かしたい」読者向けの構成です。
VPSプロバイダ比較(2026年6月時点)

私たちが過去半年で実際にHermes Agentを構築・運用したことのある主要5社を、価格・スペック・運用しやすさで比較します。為替は1ユーロ=170円、1ドル=155円で換算しています。
プロバイダ | 最安プラン | vCPU/RAM | SSD | 拠点 | 向いている人 |
|---|---|---|---|---|---|
Hetzner CX22 | €4.51/月(約770円) | 2vCPU / 4GB | 40GB | 独・フィンランド | コスパ最優先・CLI慣れ |
Hostinger VPS KVM 1 | $4.99/月(約770円) | 1vCPU / 4GB | 50GB | 米・欧・アジア | 初心者・GUIで管理したい |
Contabo VPS S | $5.50/月(約850円) | 4vCPU / 8GB | 100GB SSD | 独・米・日 | ストレージ重視・将来拡張 |
Vultr Regular | $6/月(約930円) | 1vCPU / 1GB | 25GB | 世界32拠点 | 東京リージョン必須 |
Linode Nanode | $5/月(約775円) | 1vCPU / 1GB | 25GB | 世界11拠点(東京含む) | Akamai傘下の安定性重視 |
結論から言うと、私たちは多くのケースでHetzner CX22を第一候補にしています。同価格帯で2vCPU / 4GBが取れるのはHetznerだけで、Hermes Agentが内部でローカルメモリ(SQLite + 埋め込みベクトル)を持つようになると、1GB RAM環境では明確に詰まります。
一方、「英語サポートに不安がある」「クレジットカード登録時にドイツ宛で弾かれた」というご相談も実際に頂きます。その場合は、日本語ドキュメントが充実しているHostinger、またはアジア拠点を持つVultr / LinodeのTokyoリージョンが現実解です。Contaboはストレージが極端に多く、後でNotion全文バックアップやログ蓄積を載せたい人向けです。
推奨スペックの目安
- 1vCPU / 1GB RAM:DeepSeek / Claude APIだけを叩く「API-onlyモード」なら動くが、スワップ多発でレイテンシ悪化
- 2vCPU / 4GB RAM(推奨):ローカルメモリ・小規模LLM(Ollama経由のEmbedding等)・Caddyを同居させても余裕がある
- 4vCPU / 8GB RAM以上:複数エージェントを並行運用、または社内Slackからの同時リクエストが多い場合
セットアップ完全手順(Ubuntu 24.04 LTS)

ここからはHetzner CX22 + Ubuntu 24.04 LTSを前提に、私たちが実際にクライアント環境を構築する際のコマンド列をそのまま示します。Hostinger / Contabo等でもOSをUbuntu 24.04に揃えれば同じ手順が使えます。
1. SSH鍵設定・root login無効化・ufw
初期状態のVPSはrootパスワード認証が有効になっており、世界中からSSHブルートフォースが来ます。最初の30分でここを締めてください。手元のMacから次のように進めます。
# Macで鍵を生成(まだなければ)
ssh-keygen -t ed25519 -C "hermes-vps" -f ~/.ssh/hermes_vps
# 公開鍵をVPSへ送る
ssh-copy-id -i ~/.ssh/hermes_vps.pub root@<VPS_IP>
# 鍵でログインできることを確認
ssh -i ~/.ssh/hermes_vps root@<VPS_IP>ログインできたら、VPS側で作業用ユーザーを作り、rootログインとパスワード認証を完全に止めます。
# 作業用ユーザー作成
adduser hermes
usermod -aG sudo hermes
mkdir -p /home/hermes/.ssh
cp /root/.ssh/authorized_keys /home/hermes/.ssh/
chown -R hermes:hermes /home/hermes/.ssh
chmod 700 /home/hermes/.ssh
chmod 600 /home/hermes/.ssh/authorized_keys
# sshd_config を編集
sed -i 's/^#\?PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
systemctl restart ssh
# ufw で必要ポートだけ開ける
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw --force enableここで一度SSHを切断し、必ずhermesユーザーで再ログインできることを確認してから次へ進んでください。
2. Docker / docker compose インストール
Hermes Agentはコンテナ前提で配布されるため、Docker Engine公式リポジトリから入れます。
sudo apt update && sudo apt -y install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
sudo 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" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo usermod -aG docker $USER
newgrp docker3. Hermes Agentコンテナ起動
Hermes Agent本体のDocker構成はHermes Agent Docker本番運用ガイドで詳しく解説しているため、ここでは最小のcompose.ymlだけ示します。
mkdir -p ~/hermes && cd ~/hermes
cat > compose.yml <<'YAML'
services:
hermes:
image: ghcr.io/hermes-inc/agent:latest
container_name: hermes
restart: unless-stopped
env_file: .env
volumes:
- ./data:/app/data
ports:
- "127.0.0.1:8080:8080"
YAML
cat > .env <<'ENV'
ANTHROPIC_API_KEY=sk-ant-...
DEEPSEEK_API_KEY=sk-...
TELEGRAM_BOT_TOKEN=...
SLACK_BOT_TOKEN=...
ENV
docker compose up -d
docker compose logs -f hermesポート公開を127.0.0.1:8080に絞っているのは意図的です。外部にはCaddy経由でのみ公開し、Hermes本体は直接インターネットに晒さないのが私たちの定石です。
4. Telegram / Slack ゲートウェイ接続
Telegram BotはBotFatherで取得したトークンを.envに書くだけで、Hermes側がPolling方式で接続してくれます。Slackは「Socket Mode」を有効にしておけば、VPSにIncoming Webhook用の追加ポートを開けずに済みます。私たちは原則Socket Mode推奨です(ufwルールをこれ以上増やしたくないため)。
5. systemd で常駐させる
docker composeのrestart: unless-stoppedで大半は事足りますが、VPS再起動直後にDocker daemonより先にHermesが起動しようとして失敗するケースを過去に踏みました。私たちは念のため、薄いsystemdユニットを足しています。
sudo tee /etc/systemd/system/hermes.service > /dev/null <<'UNIT'
[Unit]
Description=Hermes Agent
Requires=docker.service
After=docker.service network-online.target
[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/home/hermes/hermes
ExecStart=/usr/bin/docker compose up -d
ExecStop=/usr/bin/docker compose down
User=hermes
[Install]
WantedBy=multi-user.target
UNIT
sudo systemctl daemon-reload
sudo systemctl enable --now hermes.service6. Caddyで独自ドメインのTLSリバースプロキシ
Webhookや管理画面を外部に公開したい場合、Caddyを前段に置くと証明書発行(Let's Encrypt)まで自動でやってくれます。
sudo apt -y install caddy
sudo tee /etc/caddy/Caddyfile > /dev/null <<'CADDY'
hermes.example.com {
encode zstd gzip
reverse_proxy 127.0.0.1:8080
}
CADDY
sudo systemctl reload caddyDNSのAレコードをVPSのIPに向けておけば、初回アクセス時に証明書が自動で発行されます。Cloudflareをかぶせる場合は「Full (strict)」モードと、ufw側でCloudflare IPだけ443を許可する運用を併用しています。
セキュリティ:Fail2ban・自動アップデート
VPSは「立てた瞬間に世界中からスキャンが来る」前提で構えます。私たちが標準で入れているのは次の3つです。
sudo apt -y install fail2ban unattended-upgrades
sudo systemctl enable --now fail2ban
sudo dpkg-reconfigure -plow unattended-upgrades- SSH鍵認証 + rootログイン無効:既に手順1で実施済み
- Fail2ban:SSHへの連続失敗IPを自動BAN
- unattended-upgrades:カーネル以外のセキュリティパッチを夜間自動適用
「APIキーを.envに置きっぱなしで大丈夫か」という質問もよく頂きますが、ufwで22 / 80 / 443以外を閉じ、Hermesコンテナのポートをループバックに縛っていれば、外部から.envに到達する経路はSSH経由のみです。鍵が漏れない限り問題ありません。心配な場合はHetznerの「Encrypted volume」やHashiCorp Vaultの利用も検討してください。
バックアップ戦略:rcloneでB2 / S3互換に夜間push
Hermes Agentが保持するメモリ・会話履歴・スクリプト群は、VPSが消えると一緒に消えます。私たちはBackblaze B2を月数十円のコストで利用し、毎晩2:00に差分バックアップを取っています。
curl https://rclone.org/install.sh | sudo bash
rclone config # B2のkeyID/applicationKeyを登録
sudo tee /etc/cron.d/hermes-backup > /dev/null <<'CRON'
0 2 * * * hermes /usr/bin/rclone sync /home/hermes/hermes/data b2:hermes-backup/$(date +\%Y\%m) --transfers 4 >> /home/hermes/backup.log 2>&1
CRONこれで月初フォルダごとにバージョニングされ、過去30日分が常に手元に戻せる状態になります。VPSプロバイダ側のスナップショット機能(Hetznerは€0.01/GB/月)と二重で持っておくと、より安心です。
コスト試算:月$11〜15で24h稼働

Hermes Agent + DeepSeek APIを実運用しているクライアントの平均値です。
- Hetzner CX22(2vCPU / 4GB):約€4.51 ≒ $5.0
- DeepSeek API(個人〜小規模事業者の利用量):$5〜10
- Backblaze B2バックアップ:$0.5〜1
- 独自ドメイン(年額按分):$0.5〜1
合計で月$11〜15、日本円で約1,700〜2,300円に収まります。同等の作業を人手で外注した場合の時給1回分にも届かない水準です。詳細な内訳はHermes Agentコスト全体ガイドを参照してください。
vs Mac mini / vs ローカルDocker / vs Modal
「結局どれが正解か」という質問への、私たちの回答を表にまとめます。
選択肢 | 初期費用 | 月額 | 向いている人 |
|---|---|---|---|
VPS($5プラン) | 0円 | $11〜15 | 今すぐ始めたい・引っ越し容易性重視 |
Mac mini M4(自宅) | 8〜12万円 | $8〜12(電気代+API) | 3年以上使う・ローカルLLMも回したい |
ローカルDocker(常時起動PC) | 0円 | API代のみ | 検証・開発用途。本番非推奨 |
Modal / Fly.io等のFaaS | 0円 | $15〜30 | 常駐ではなくイベント駆動メインの構成 |
VPSの最大の強みは「合わなかったら来月解約、別プロバイダに移行も2時間で終わる」点です。Hermes Agentは状態のほとんどが./data配下に集約されるため、rclone bucketを共有すれば別VPSでdocker compose up -dするだけで復元できます。この移行性の高さは、初めてセルフホスティングに挑む方に強くお勧めできる理由でもあります。
まとめ:まずHetzner CX22で立ち上げ、必要に応じて縦に伸ばす
Hermes Agentを月$5前後のVPSで運用するための完全マニュアルをお届けしました。私たちが伴走してきた中小事業者の事例では、Hetzner CX22 + DeepSeek API + Backblaze B2の構成が「月コスト・運用負荷・拡張性」のバランス点として最も再現性が高い構成でした。最初の壁はSSH鍵設定とufwだけです。そこさえ越えれば、あとはこの記事のコマンドを順にコピーするだけで、本番運用に耐えるエージェント基盤が手に入ります。
「自社のSlackやLINEとどう繋ぐか」「Caddyの前にCloudflare Zero Trustを置きたい」など、踏み込んだ構成のご相談も増えています。実運用での落とし穴はDocker本番運用ガイド、Mac miniとの比較はMac mini版コスト記事に続けています。株式会社Fyveは、AI業務効率化の専属顧問サービスを通じて、こうした基盤構築を含む現場運用までを支援しています。
Hermes Agent を本気で活用するなら
「Hermes Agent を自分で使いこなしたい」「自社の業務に組み込みたい」
— そんな方は、まず初回無料相談でお話ししてみませんか。