Каждый контейнер в Docker - это отдельный хост с собственным IP-адресом и именем хоста, поэтому вы не можете подключиться к вашей БД из своего приложения, используя 127.0.0.1, они не работают на одном хосте.
Вы можете видеть IP-адрес, назначенный контейнеру, с помощью docker inspect <container-id>
, но более просто вы можете ссылаться на сервис, запущенный в контейнере, по его хосту, который по умолчанию является именем контейнера (db
в вашем случае). Вы также можете настроить имя хоста, используя hostname
, как вы это сделали.
Установите db
(или hybris_dev
в зависимости от того, как вы предпочитаете настраивать свой контейнер) в качестве имени хоста, чтобы установить соединение с вашей БД изваше приложение и оно должно работать.