私のスタックは、私のSymfonyアプリケーションのための1つのコンテナ、Mysqlのもう1つのコンテナです。 何らかの理由で、symfonyはエラーを次のようにMySQLのコンテナに接続することはできません。SymfonyドッカーコンテナはMysqlに接続できません
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
この
<?php
$dbh = new PDO('mysql:host=database;dbname=mysite', 'mysite', 'password');
でsymfonyのコンテナの作品で、MySQLの接続をテストするための簡単なPHPファイルはここにあります私のsymfonyのパラメータ・ファイル:
:database_driver: pdo_mysql
database_host: database
database_port: 3306
database_name: mysite
database_user: mysite
database_password: password
そしてここでは、私のドッキングウィンドウ・コンファイルです
site:
build: webapp
ports :
- "80:80"
volumes:
- /home/myuser/dev/mysite:/var/www/html/
links:
- database
database:
image: mysql:5.5
ports:
- "3306:3306"
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=mysite
- MYSQL_USER=mysite
- MYSQL_PASSWORD=password
私はまた、エラーなしで新鮮なSymfonyプロジェクトを試しました。
ダブルチェックのconfig /のparamファイル:
また、あなたの
config.yml
ファイルをチェックアウトすることができます。あなたのパラメータを無視しようとしています(ローカルに接続しようとしています) – JimLエラーメッセージにログインパラメータが含まれていて、パラメータファイルを変更したときに更新されています。 PDO - > __ construct( 'mysql:dbname = my ...'、 'mysite'、 'password') – loicb
この答えは、 'mysql:'と 'host'の間にスペースを入れることを示唆しています。 http://stackoverflow.com/a/25432156/1811501 – thaJeztah