У меня есть буксируемые контейнеры, один с symfony приложением , а другой - mysql сервер базы данных:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
99d17c328612 sbc/gestcom:1.0 "docker-php-entrypoi…" 18 hours ago Up 2 minutes 0.0.0.0:4400->80/tcp musing_moser
97dafcfb4acd mysql "docker-entrypoint.s…" 18 hours ago Up 2 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp suspicious_brattain
I связанный mysql контейнер с symfony contianer, например, так:
docker container run -d -p 4400:80 --link suspicious_brattain:db sbc/gestcom:1.0
suspicious_brattain : это имя mysql контейнера
sbc / gestcom: 1.0 : это имя созданного мной образа, содержащего мое приложение symfony (с apache, php и драйвером pdo, необходимыми для работы с mysql)
Теперь, когда я получаю доступ к symfony контейнер приложения для запуска doctrine:database:create
Я получаю это исключение:
В AbstractMySQLDriver. php строка 93:
Исключительная ситуация в драйвере: SQLSTATE [HY000] [ 2002] Соединение отказано
Это parameters.yml
файл:
parameters:
database_host: 127.0.0.1
database_port: 3306
database_name: my_database
database_user: root
database_password: root
Конечно, я дал root
в качестве пароля для mysql образа при его запуске как: Итак:
docker container run -e MYSQL_ROOT_PASSWORD=root -d mysql
И чтобы быть уверенным, что контейнер symfony связан с контейнером mysql, я получаю это при проверке контейнера symfony:
...
"Links": [
"/suspicious_brattain:/musing_moser/db"
],
...
* 1 041 * Как вы видите, они связаны, однако я все еще не могу создать свою базу данных с помощью команды symfony, и я получаю
Connection refused
!