Dockerized Spring Boot 应用程序连接到主 MySQL [重复]
Posted
技术标签:
【中文标题】Dockerized Spring Boot 应用程序连接到主 MySQL [重复]【英文标题】:Dockerized springboot app connect to main MySQL [duplicate] 【发布时间】:2019-12-24 01:47:22 【问题描述】:我有一个需要 mysql 运行的“dockerized”springboot 应用程序。
我在我的 ubuntu 上安装了 mysql,并且想使用 docker 启动我的应用程序的容器,并且需要知道在数据库 url 连接中指定什么,以便我的应用程序连接到我的 ubuntu 上安装的 mysql。
jdbc:mysql://locahost:3066/database_name
之类的东西不起作用,因为 localhost 指的是没有 mysql 实例的容器本身。
另一个解决方案是启动一个 mysql docker 容器并指定它的名称来代替 localhost...但是我不想启动一个 mysql docker 容器,因为我已经安装了 mysql(并且需要卷配置来保存数据坚持)
提前致谢。
【问题讨论】:
检查this 【参考方案1】:您需要将主机的 IP 映射到容器内的名称。你用
docker run --add-host mysqlhost:192.168.0.3 ...
您需要提供主机的 IP 而不是 192.168.0.3
那么您的连接字符串将是:jdbc:mysql://mysqlhost:3066/database_name
【讨论】:
是的,它可以工作,但主机的 ip 可能会改变:/ 所以使用自动化方式获取 IP 并将其集成到您的命令中;)以上是关于Dockerized Spring Boot 应用程序连接到主 MySQL [重复]的主要内容,如果未能解决你的问题,请参考以下文章
dockerized 环境中的 Keycloak 和 Spring Boot Web 应用程序
Dockerized Spring Boot 应用程序连接到主 MySQL [重复]
java.net.UnknownHostException 来自 Spring Boot 应用程序的 dockerized mysql
Dockerized Spring Boot 应用程序不使用已安装的 Kubernetes ConfigMap (application.properties)
将外部 application.properties 文件添加到 tomcat 内的 dockerized spring boot web 应用程序