← OpenClaw Stackとは ネットワーク →

アーキテクチャ

システム構成

OpenClaw Stack(VPS環境)は、大きく3つのコンポーネントで構成されています。

インターネットからのアクセス
        |
   TLS + BasicAuth(暗号化 + 認証)
        |
  +--------------+
  |    Caddy     |  ← リバースプロキシ(門番)
  +--------------+
        |
  ループバック 127.0.0.1:18789(内部通信のみ)
        |
  +----------------+
  | OpenClaw       |
  | Gateway Container | ← AIエージェントの実行環境
  +----------------+
        |
  外部APIへのHTTPSリクエスト
        |
  +----------------+
  | LLM API        | ← テキスト生成AI
  +----------------+

各コンポーネントの役割

Caddy(リバースプロキシ)

CaddyはインターネットとOpenClaw Gatewayの間に立つ「門番」です。

役割 説明
TLS終端 HTTPS通信の暗号化を処理(Let's Encryptで自動更新)
BasicAuth ユーザー名とパスワードによる認証
リバースプロキシ 認証を通った通信だけをGatewayに中継
アクセスログ すべてのアクセスを記録

OpenClaw Gateway(AI実行環境)

GatewayがAIエージェントの本体です。

役割 説明
エージェント実行 AIエージェントのワークフローを実行
ペアリング管理 許可されたデバイスの登録・管理
トークン認証 Gateway固有の認証トークンによるアクセス制御
API中継 LLM APIへのリクエストを管理

Dockerネットワーク

コンテナ同士は専用のDockerネットワーク(172.30.0.0/24)で接続されます。

このネットワークは外部からは見えません。

graph TD Client["👤 クライアント"] --> Caddy["🔑 Caddy
TLS終端 + BasicAuth"] Caddy -->|"127.0.0.1:18789"| GW["🤖 OpenClaw Gateway
トークン認証 + デバイスペアリング"] GW --> Agent["🤖 エージェント
ワークフロー実行"] Agent -->|"HTTPS"| API["☁️ LLM API
テキスト生成"]

責任境界

担う責任 障害時の影響
Caddy(エッジ) TLS・認証・ログ アクセス不能(Gateway自体は健在)
Gateway(コントロールプレーン) エージェント実行・認証・状態管理 全サービス停止
LLM API(プロバイダー) テキスト生成 AIの応答不可(システム自体は稼働)

データフロー

ユーザーがAIにリクエストを送ってから応答が返るまでの流れ:

  1. クライアント → Caddy: HTTPSリクエスト(TLS暗号化 + BasicAuth認証)
  2. Caddy → Gateway: 認証済みリクエストを 127.0.0.1:18789 にプロキシ
  3. Gateway: トークン・ペアリング認証 → エージェントにルーティング
  4. エージェント → LLM API: 外部APIに推論リクエスト
  5. 応答: LLM → エージェント → Gateway → Caddy → クライアント

重要: Gatewayは絶対に 0.0.0.0(全インターフェース)にバインドしてはいけません。Caddyだけが唯一の入口です。