ホームページ  >  記事  >  データベース  >  IP アドレスなしで Docker 内の他のコンテナから MySQL コンテナにアクセスするにはどうすればよいですか?

IP アドレスなしで Docker 内の他のコンテナから MySQL コンテナにアクセスするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-26 04:42:30308ブラウズ

How to Access a MySQL Container from Other Containers in Docker Without IP Addresses?

IP アドレスを使用せずに他のコンテナから MySQL コンテナにアクセスする

Docker 環境では、別のコンテナから MySQL コンテナに接続する必要が生じる場合があります。 MySQL コンテナの IP アドレスを使用して接続を確立することは可能ですが、このアプローチには柔軟性がありません。アクセシビリティを向上させるために、代替方法が存在します。

推奨される解決策の 1 つは、ユーザー定義のネットワークを利用することです。この方法には、従来の --link フラグに比べていくつかの利点があります。

  • 構成の簡素化: ユーザー定義のネットワークにより、通信を必要とするすべてのコンテナに共通のネットワークを指定できます。
  • 柔軟性の向上: 同じネットワーク上のコンテナは、静的 IP アドレスに依存せずにシームレスに通信できます。

ユーザー定義のネットワークを利用するには、次の手順に従います。

  1. カスタム ネットワークを作成します:
docker network create my_network
  1. 作成したネットワーク上でコンテナを実行します:
docker run -d --name php_container --network my_network my_php_image

docker run -d --name mysql_container --network my_network my_mysql_image

コンテナーが同じネットワーク上で実行されている場合、互いのコンテナー名をホスト名として使用して通信できます。このシナリオでは、PHP コンテナは次のコードを使用して MySQL コンテナへの接続を確立できます:

<code class="php">$mysqli = new mysqli("mysql_container", "mattia", "prova", "prova");</code>

ユーザー定義のネットワークを活用することで、IP に依存せずにシームレスなコンテナ間通信を実現できます。アドレスを指定し、柔軟性を向上させ、Docker 環境の構成を簡素化します。

以上がIP アドレスなしで Docker 内の他のコンテナから MySQL コンテナにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。