別のコンテナから MySQL コンテナにアクセスする
Docker 化された環境では、別のコンテナでホストされているデータベースに接続するときに問題が発生する可能性があります。データベース接続にコンテナの IP アドレスを使用するのは簡単そうに見えますが、潜在的なリスクと制限が生じます。
幸いなことに、Docker はユーザー定義のネットワークを通じて、より堅牢なソリューションを提供します。ネットワークを作成し、MySQL コンテナとクライアント コンテナの両方をそれに接続すると、それらの間で信頼性が高く安全な通信を確立できます。
ステップ 1: ネットワークを作成する
実行次のコマンドを使用して、「my_network」という名前のカスタム ネットワークを作成します。
docker network create my_network
ステップ 2: MySQL コンテナを起動します
作成したネットワーク内で MySQL コンテナを起動します。
docker run -d --name mysql_container --network my_network my_mysql_image
ステップ 3: クライアント コンテナを起動します
同様に、同じネットワーク上でクライアント コンテナを起動します:
docker run -d --name php_container --network my_network my_php_image
ステップ 4: データベース接続スクリプト
クライアント コンテナ内で、MySQL コンテナのホスト名を使用してデータベース接続を確立できます。
<code class="php">$mysqli = new mysqli("mysql_container", "mattia", "prova", "prova");</code>
ユーザーを使用する利点-定義されたネットワーク
ユーザー定義のネットワークを使用すると、次のような利点があります。
以上がDocker の別のコンテナから MySQL コンテナに安全に接続するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。