--- title: "ネットワーク設定の詳細" --- 同時に、LangBotインスタンスがコンテナで実行されている他のサービス(Ollamaなど)に接続する必要がある場合も、以下の設定を参照して、`メッセージングプラットフォーム`を`接続したいサービス`に置き換えてください。 LangBotと一部のメッセージングプラットフォームは、どちらもDockerを使用してデプロイできます。以下は、4つの異なるシナリオのネットワーク設定の詳細です。 [[toc]] ## LangBotとメッセージングプラットフォームの両方がDockerコンテナで実行されている場合 メッセージングプラットフォーム(NapCat/Lagrange)とLangBotの両方がDockerを使用して起動される場合、Dockerのネットワーク接続を設定する必要があります。 新しいネットワークを作成します: ```bash docker network create langbot-network ``` LangBotディレクトリの`docker-compose.yaml`ファイルにネットワーク設定を追加します(`services.langbot`フィールドに追加し、`networks`フィールドの下に`langbot-network`ネットワーク設定を追加します): ```yaml services: langbot: ... networks: - langbot-network ... networks: langbot-network: external: true ``` 次に、メッセージングプラットフォームの`docker-compose.yaml`ファイルに同じネットワーク設定を追加します(docker runコマンドで直接起動する場合は、起動コマンドに`--network langbot-network`を追加します)。その後、メッセージングプラットフォームの設定ファイルで、WSリバース接続アドレスのIPアドレスを`langbot`に変更します(例: `ws://langbot:2280/ws`)。 両方のコンテナを再起動します。 ## LangBotのみがDockerコンテナで実行されている場合 LangBotのみがDockerを使用してデプロイされている場合、ポート2280から2290はデフォルトでコンテナの外部にマッピングされています。この場合、LangBotはWebSocketサーバーとしてのみ動作し、メッセージングプラットフォームからクライアントとしての接続を受け入れることができます。 メッセージングプラットフォームをReverseWebSocket(`reverse ws`または`WebSocketクライアント`と呼ばれます)に設定し、LangBotのaiocqhttpアダプターによって有効にされたポートに対応するポートで、ローカル127.0.0.1に接続します。 ## LangBotもメッセージングプラットフォームもDockerデプロイを使用していない場合 ドキュメントに従ってメッセージングプラットフォームとLangBotの設定を行い、両方のポートを同じ未使用のポートに設定し、両方ともローカル127.0.0.1に接続します。 ## メッセージングプラットフォームのみがDockerコンテナで実行されている場合(推奨されません) Linuxまたはホストモードのdockerネットワークをサポートする他のシステムのみサポートします。 現在、LangBotのaiocqhttpアダプターはリバースWebSocket接続のみをサポートしています。メッセージングプラットフォームがDockerコンテナで実行され、LangBotがホストマシンで直接実行される場合、メッセージングプラットフォームはLangBotに接続するクライアントとして動作する必要があります。この場合、メッセージングプラットフォームのネットワークを`host`モードに設定し、そのWS接続アドレスを127.0.0.1に設定し、ポートをLangBotのaiocqhttpアダプターによって有効にされたポートに対応させることしかできません。