Отказ в подключении Doctrine от контейнера Symfony Docker к контейнеру MariaDB - PullRequest
0 голосов
/ 02 октября 2019

Ударил меня в 2:30 утра

У меня есть три контейнера Docker MariaDB , Nginx и PhpFpm .

MariaDB открывает 3306 / tcp - нет открытого порта, потому что все контейнеры совместно используют одну и ту же сеть Docker.

Symfony запускается в PhpFpm и предоставляется через Nginx через порт 8081.

Итак myhost.com: 8081 показывает мое приложение Symfony.

  1. Когда я docker exec bash в моем контейнере PhpFpm и выполняю схему bin/console doctrine:schema:create, создается, MariaDB имеет новую таблицу.
  2. Конечно, я очищаю кеш и разогреваю для APP_ENV = prod
  3. var / log и var / cache установили правильные разрешения.

Независимо от того, чтоЯ использую соединение PDO в контроллере моего приложения Symfony. Я получаю

Ошибка отклонения соединения

, видимая в моем prod.log внутриконтейнер.

Я пытался .env с несколькими параметрами, наиболее заметными из которых являются:

  1. DATABASE_URL = "mysql: // пользователь: pass @ hostname: 8084/ db "(здесь я устанавливаю -p 8084: 3306 для контейнера MariaDB)

и

DATABASE_URL = "mysql: // user: pass @ mariadbcontainername: 3306 / db" (здесь я не предоставлял порт БД, как упомянуто выше)

У кого-нибудь есть идеи, где искатьи что проверить?

Я даже могу проверить, что мои bin/console doctrine... команды уже получают ошибку Отказ в соединении, когда я изменяю DATABASE_URL на бессмысленное значение.

PS: из-за ограничений сервераЯ не использую docker-compose, а просто запускаю Docker.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...