私はドッカーセットアップで動作するsymfony環境を持っています。 docker-compose.yml(version 2)経由でいくつかのコンテナを起動します。ここでは関係コンテナ次のとおりです。私はブラウザを介して私のsymfonyのプロジェクトを開くとテスト環境でのSymfony PDO接続
phpfpm、nginxのとmariadb
を、それが正常に私のデータベースに接続します(「mariadb」と呼ばれるコンテナに)。データベースのテーブルのレコードが表示されます。たとえ私がデータベーススキーマを更新するコンソールコマンドを実行しても、それは動作し、変更は私のデータベースに適用されます。
私は、同じホスト(mariadb)上の2番目のデータベースに対してテストを実行する機能テスト/統合テストを作成します。
これは私が接続しようとする方法である:
$dsn = sprintf(
'mysql:host=%s;port=%s',
'mariadb',
3306
);
$pdo = new PDOConnection(
$dsn,
'otk_dbuser',
'testpass'
);
しかし、結果は次のメッセージです:
SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known
/opt/project/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:47
/opt/project/src/TestingBundle/Tests/DatabaseTestCase.php:56
/opt/project/src/TestingBundle/Tests/DatabaseTestCase.php:18
あなたは私にいくつかの助けをお願いできますか?
敬具、 マックス