1台のLinuxクラウドVPSで「検証用」「ステージング」「社内Bot用」など複数のOpenClawゲートウェイを同時に走らせると、衝突はだいたい「同じ状態ディレクトリ」「同じリッスンポート」「同じsystemdユニット名」に収束します。ここではProfileごとにOPENCLAW_*でパスを分け、ポート行列を表に固定し、systemd --userでテンプレート化する再現手順と、典型症状のFAQだけを短くまとめます。初回セットアップはLinux VPS実践FAQ、チャネルが増えたあとの権限衝突はTelegram/Discord二重チャネルFAQも併せてどうぞ。
OPENCLAW_*で状態と設定を分離する
同一OSユーザーで並列に動かすなら、少なくとも「設定」「ランタイム状態」「ログ」のルートをProfile名で分けます。実際の変数名はリリースで増減しうるため、CLIのopenclaw doctorかドキュメントで現行キーを確認し、.envかEnvironment=にまとめて書きます。原則は「デフォルトの~/.openclaw系を共有しない」ことです。
# /etc/openclaw/profile-stg.env など1 Profile 1 ファイル OPENCLAW_PROFILE=stg OPENCLAW_CONFIG_DIR=/var/lib/openclaw/stg/config OPENCLAW_STATE_DIR=/var/lib/openclaw/stg/state OPENCLAW_LOG_DIR=/var/log/openclaw/stg # ゲートウェイの待受は必ず一意(下表と合わせる) OPENCLAW_GATEWAY_LISTEN=127.0.0.1:18790
ポート行列(リッスン・反代・SSHトンネル)
外向き443は1つでも、ローカルリッスンはProfileごとにずらします。リバースプロキシのupstreamと、開発者のSSH Lフォワード先が取り違えやすいので、表をRunbookに貼ります。
| Profile | loopback待受 | 反代upstream例 | よくある衝突 |
|---|---|---|---|
dev |
127.0.0.1:18789 |
dev-gw.internal → :18789 |
デフォルト設定のまま二重起動 |
stg |
127.0.0.1:18790 |
stg-gw.internal → :18790 |
同じSTATE_DIRでロック競合 |
prod |
127.0.0.1:18791 |
公開443は別serverブロック | SNI/証明書の取り違え |
systemd --userテンプレートでユニット名も分離
システム全体ではなくデプロイ用非rootユーザーで動かす場合、systemd --userに寄せると権限境界が明瞭です。[email protected]のようにテンプレート化し、[email protected]の引数でEnvironmentFileを切り替えます。WorkingDirectoryとUMaskもProfileごとに揃えると、誤ったディレクトリへの書き込みに早く気づけます。
loginctl enable-linger deploy systemctl --user daemon-reload systemctl --user enable --now [email protected]
衝突と典型症状の短いFAQ
| 症状 | まず疑う点 | 確認コマンドの方向 |
|---|---|---|
| 起動直後に片方が落ちる | 同一STATE_DIRまたはPIDロック |
各EnvironmentFileのパス、openclaw doctor |
address already in use |
ポート重複またはゾンビプロセス | ss -tlnpでPID特定→ユニット停止 |
| 設定だけ別Profileに混ざる | シェルログイン時のexport漏れ |
対話シェルとsystemdの環境差分をdiff |
| 片方だけWebhook検証失敗 | トークン/シークレットのファイル共有 | 設定ディレクトリの実パスと権限(namei -l) |
EnvironmentFileやWebhookシークレット、セッショントークンはマスクしてください。マルチProfile運用ほど、1本のログに複数環境の秘密が混ざりやすくなります。
ゲートウェイはLinux、検証の芯はクラウドMacへ
本記事のようなマルチProfile運用は、CLIとsystemdの切り分けが速いほど楽になります。クライアントアプリやiOSビルドの主戦場をmacOS側に置くと、BotやGatewayのLinuxサーバと役割分担がはっきりし、手戻りも減りやすいです。Xcode・Homebrew・Dockerがネイティブに揃い、Unix系の操作感は本文のコマンドともそのまま噛み合います。
Mac mini M4は待機電力が目安約4Wと低く静音で、長時間ログやビルドを並べてもデスク負担が小さいです。Apple Siliconの統合メモリとGPU/Neural Engineは同価格帯の汎用PCよりローカル検証の体感速度で有利になりやすく、macOSの安定性とGatekeeper/SIPによる多層防御は長期運用の安心感につながります。
LinuxでGatewayを並列化しつつ、開発用のMac環境をクラウドに寄せるなら、VPSSparkのクラウドMac mini M4はコストパフォーマンスの良い出発点です——プランを今すぐ確認し、隔離とビルドを同じリズムで回し始めてください。