ドッカーに新しく、laradockを使用してCraft CMSプロジェクトで自分の環境をセットアップしています。私はそれをインストールしてセットアップすることができますが、laradockがdocker-compose.yml
ファイルから作成するMySQLコンテナに接続しようとすると問題が発生します。Docker MySQLコンテナに接続するときに間違った資格情報
は、DB関連の部分は私のcraft/config/db.php
ファイルの中で私のdocker-compose.yml
mysql:
build:
context: ./mysql
args:
- MYSQL_DATABASE=homestead
- MYSQL_USER=homestead
- MYSQL_PASSWORD=secret
- MYSQL_ROOT_PASSWORD=root
volumes:
- mysql:/var/lib/mysql
ports:
- "3306:3306"
でだ、私は次の設定があります。
return array(
'.dev' => array(
'tablePrefix' => 'craft',
'server' => 'mysql',
'database' => 'homestead',
'user' => 'homestead',
'password' => 'secret',
),
);
しかし、私はCraft can’t connect to the database with the credentials in craft/config/db.php
エラーを取得しています。
私の質問は - ドッカーがMySQLコンテナを作成するとき、私はそれがdocker-compose.yml
ファイルの資格情報を使ってそのデータベースにアクセスしていると仮定しています。その場合、私のコンテナが稼動していて、db.php
ファイルの資格情報とdocker-compose.yml
ファイルの資格情報が一致している限り、接続しないでください。
MySQLコンテナの資格情報を更新する場合は、両方のファイルの値を更新してdocker-compose up -d mysql
を実行するだけですか?
ありがとうございます!
データベースホストがまだ設定されていません。 - アプリケーションサービスにデータベースサービスをリンクし、 'craft/config/db.php'のホスト名(あなたの場合は 'mysql')としてデータベースサービス名を使用します - データベースホストとしてドッカーブリッジアドレスを設定しますホスト(ポートセクション)にマップされたポートを使用します。 –