- ネットワークの作成: まず、Dockerネットワークを作成します。これにより、コンテナ間で通信するための仮想ネットワークが作成されます。次のコマンドを使用します。
docker network create mynetwork
- MySQLコンテナの作成: 次に、MySQLコンテナを作成します。以下のコマンドを使用して、MySQLコンテナを作成し、作成したネットワークに接続します。
docker run -d --name mysql-container --network=mynetwork -e MYSQL_ROOT_PASSWORD=password mysql
- アプリケーションコンテナの作成: MySQLに接続するためのアプリケーションコンテナを作成します。アプリケーションコンテナは、MySQLコンテナと同じネットワークに接続する必要があります。以下は、アプリケーションコンテナの作成例です。
docker run -d --name app-container --network=mynetwork your-application-image
- アプリケーションの設定: アプリケーション内でMySQLに接続するための設定を行います。以下は、Pythonの例です。
import mysql.connector
# MySQLへの接続設定
config = {
'user': 'root',
'password': 'password',
'host': 'mysql-container', # MySQLコンテナの名前を指定
'database': 'mydatabase' # 接続するデータベース名を指定
}
# MySQLに接続
cnx = mysql.connector.connect(config)
# クエリの実行など、必要な処理を行う
# 接続を閉じる
cnx.close()
上記の例では、MySQLコンテナの名前をmysql-container
、接続するデータベース名をmydatabase
としています。適宜、環境に合わせて設定を変更してください。
これで、Dockerコンテナ間でMySQLに接続することができます。必要に応じて、アプリケーションコンテナ内でのデータベースの操作やクエリの実行などを行ってください。
この記事では、Dockerを使用して別のコンテナに接続する方法を解説しました。コンテナ間通信やデータベースの管理において、Dockerは非常に便利なツールです。