У меня есть приложение Spring / Hibernate, которое работало с h2-database.Теперь мне нужно подключить его к базе данных Mysql, работающей в контейнере Docker.
Контейнер Mysql получен непосредственно со страницы Dockerhub .
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_DATABASE=test -d mysql:latest
В моем application.properties у меня есть:
spring.jpa.hibernate.ddl-auto=create
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=my-secret-pw
Сразу послезапускается, я получаю это исключение
com.mysql.cj.jdbc.exceptions.CommunicationsException: сбой линии связи
Последний пакет, успешно отправленный на сервер, был 0 миллисекунд назад.Драйвер не получил никаких пакетов с сервера.в com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException (SQLError.java:174) ~ [mysql-connector-java-8.0.13.jar: 8.0.13] в com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException (SQLExceptionsMapping.java:64) ~ [mysql-connector-java-8.0.13.jar: 8.0.13] в com.mysql.cj.jdbc.ConnectionImpl.createNewIO (ConnectionImpl.java:835) ~ [mysq-connector-java-8.0.13.jar: 8.0.13] в com.mysql.cj.jdbc.ConnectionImpl. (ConnectionImpl.java:455) ~ [mysql-connector-java-8.0.13.jar: 8.0.13] at com.mysql.cj.jdbc.ConnectionImpl.getInstance (ConnectionImpl.java:240) ~ [mysql-connector-java-8.0.13.jar: 8.0.13]
Контейнер MysqlКажется, работает нормально.Я могу войти и посмотреть, как он работает.
Итак, где может быть проблема?