Ошибка канала связи - MySQL + JDBC - PullRequest
0 голосов
/ 28 октября 2019

Я пытаюсь подключиться к Docker-контейнеру MySQL из приложения весенней загрузки. Каждый раз, когда я запускаю свой класс @SpringBootApplication из eclipse, я получаю

com.mysql.cj.jdbc.exceptions.CommunicationsException: сбой канала связи

Последний пакет, успешно отправленный на сервер, был0 миллисекунд назад. Драйвер не получил пакетов от сервера.

Я запускаю свой док-контейнер с командной строкой ниже:

docker container run --name expenses-mysql-db --network expensetracker-net -e MYSQL_ROOT_PASSWORD=password -d mysql

Ниже приведено содержимое файла application.properties:

spring.datasource.url=jdbc:mysql://expenses-mysql-db:3306/expensedb
spring.datasource.username=root
spring.datasource.password=password
spring.jpa.hibernate.ddl-auto=create

Я ожидаю успешного подключения при запуске API-интерфейса Spring, но оно будет прервано за исключением приведенного выше. Пожалуйста, помогите.

1 Ответ

1 голос
/ 28 октября 2019

Вы должны выставить порт mysql вне контейнера Docker. Используйте -p, чтобы открыть порты.

docker container run -p 3306:3306 --name expenses-mysql-db --network expensetracker-net -e MYSQL_ROOT_PASSWORD=password -d mysql
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...