同じホストで複数の Gateway を実行する方法
開発を進めていると、メインのシステムが動かなくなったときのために、デバッグや設定変更を行うための「救急用」の環境を別に用意しておきたくなることがあります。しかし、同じサーバーで複数の環境を動かそうとすると、設定の書き換えやポートの競合といった問題に直面しがちです。
通常、1つの Gateway で複数のメッセージ接続やエージェントを処理できますが、より強力な分離や冗長性が必要な場合は、プロファイルやポートを分けた別の Gateway を実行するのがベストな解決策です。
- OpenClaw CLI
- 衝突しない複数のポート番号
- インスタンスごとに独立した設定ファイルとステートディレクトリ
クイックスタート
Section titled “クイックスタート”最も推奨される方法は --profile オプションを使用することです。これにより、OPENCLAW_STATE_DIR と OPENCLAW_CONFIG_PATH が自動的にスコープされ、サービス名にサフィックスが付与されます。
# メイン環境のセットアップopenclaw --profile main setupopenclaw --profile main gateway --port 18789
# レスキュー環境のセットアップopenclaw --profile rescue setupopenclaw --profile rescue gateway --port 19001プロファイルごとのサービス管理も簡単です。
openclaw --profile main gateway installopenclaw --profile rescue gateway install隔離のためのチェックリスト
Section titled “隔離のためのチェックリスト”同じホストで実行する場合、以下の項目がインスタンスごとに独立している必要があります。これらが共有されていると、設定の競合やポートの衝突が発生します。
OPENCLAW_CONFIG_PATH— インスタンスごとの設定ファイルOPENCLAW_STATE_DIR— セッション、認証情報、キャッシュagents.defaults.workspace— ワークスペースのルートgateway.port(または--port) — ユニークなポート番号- 派生ポート (browser/canvas) が重複していないこと
レスキュー用ボットの構築ガイド
Section titled “レスキュー用ボットの構築ガイド”メインのボットがダウンした際でもデバッグや設定変更ができるよう、独立したレスキュー用ボットを同じホストで動かす手順です。ポート番号は、ベースポートから少なくとも 20 以上の間隔を空けて設定してください。
インストール手順
Section titled “インストール手順”# メインボット (既存または新規、--profile 指定なし)# ポート 18789 と各種派生ポートを使用openclaw onboardopenclaw gateway install
# レスキュー用ボット (隔離されたプロファイルとポート)openclaw --profile rescue onboard# 注意点:# - workspace 名にはデフォルトで -rescue が付与されます# - ポートは 18789 + 20 以上を確保するか、19789 のような全く別の番号を推奨します# - その他のオンボーディング手順は通常と同じです
# サービスのインストール (オンボーディング中に完了していない場合)openclaw --profile rescue gateway installPort mapping の仕組み
Section titled “Port mapping の仕組み”ベースとなるポート(gateway.port, OPENCLAW_GATEWAY_PORT, または --port)から、以下のポートが自動的に派生します。
- browser control service port = ベースポート + 2 (ループバックのみ)
canvasHost.port= ベースポート + 4- Browser profile CDP ports =
browser.controlPort + 9から+ 108の範囲で自動割り当て
設定や環境変数でこれらを上書きする場合は、必ずインスタンス間でユニークな値を指定してください。
Browser/CDP に関する注意点
Section titled “Browser/CDP に関する注意点”- 複数のインスタンスで
browser.cdpUrlを同じ値に固定しないでください。 - 各インスタンスには、独自の browser control port と CDP 範囲が必要です。
- 特定の CDP ポートが必要な場合は、インスタンスごとに
browser.profiles.<name>.cdpPortを設定してください。 - リモートの Chrome を使用する場合は、
browser.profiles.<name>.cdpUrlをプロファイルおよびインスタンスごとに設定します。
手動での環境変数指定例
Section titled “手動での環境変数指定例”プロファイル機能を使わずに、環境変数で制御する場合の例です。
OPENCLAW_CONFIG_PATH=~/.openclaw/main.json \OPENCLAW_STATE_DIR=~/.openclaw-main \openclaw gateway --port 18789
OPENCLAW_CONFIG_PATH=~/.openclaw/rescue.json \OPENCLAW_STATE_DIR=~/.openclaw-rescue \openclaw gateway --port 19001困ったときは
Section titled “困ったときは”設定が正しいか、以下のコマンドでステータスを確認してください。
openclaw --profile main statusopenclaw --profile rescue status解決しない場合は、AI Setup Assistant も活用してください。
次のステップ
Section titled “次のステップ”- Gateway configuration reference
- CLI command settings
OpenClaw Expert
まだ解決しませんか?
このページで解決しない場合は、OpenClaw Expertに直接質問してください。