无法从Spring Boot Docker容器连接到本地MySQL数据库服务器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法从Spring Boot Docker容器连接到本地MySQL数据库服务器相关的知识,希望对你有一定的参考价值。
我正在使用Windows 10环境。我的Docker版本1.13.0,构建49bf474。
我有一个在Docker容器上运行的Spring Boot应用程序我试图从Spring Application访问mysql的本地实例。我的MYSQL实例没有在容器上运行。
我知道这是一个网络问题,并且已经尝试使用以下命令运行docker:docker run -p 8282:8191 ami --network =“host”但没有成功。
有人可以帮我解决这个问题。
提前致谢。
注意:我的Spring应用程序配置很好,因为我可以从容器连接AWS MYSQL RDS服务器而没有任何问题。
The error I am receiving as below
2019-04-19 07:33:32.025 INFO 1 --- [ main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 3308 ms
2019-04-19 07:33:32.264 INFO 1 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2019-04-19 07:33:33.422 ERROR 1 --- [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Exception during pool initialization.
com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
Few Information :
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/financedb
spring.datasource.username=****
spring.datasource.password=****
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
Docker for Windows使用vm来运行Linux容器。因此,当使用net = host运行时,“localhost”是vm,而不是您的Windows机器您可以使用特殊主机名作为MySQL主机
docker.for.win.localhost
这指向您的Windows机器,您甚至可以在没有net = host的情况下运行。
以上是关于无法从Spring Boot Docker容器连接到本地MySQL数据库服务器的主要内容,如果未能解决你的问题,请参考以下文章
Docker:无法连接 Spring Boot 和 MYSQL
无法将docker Spring-Boot应用程序与docker-compose中的mysql容器和flyway连接起来
无法从 docker 容器内的 Spring Boot 连接到 Redis
无法从 Spring Boot Docker 容器连接到本地 MySQL 数据库服务器