我有一个“dockerized”springboot 应用程序,需要 mysql 才能运行。
我的 ubuntu 上安装了 mysql,想要使用 docker 启动我的应用程序的容器,并且需要知道在数据库 URL 连接中指定什么,以便我的应用程序连接到我的 ubuntu 上安装的 mysql。
类似这样的jdbc:mysql://locahost:3066/database_name
不会工作,因为 localhost 指的是没有 mysql 实例的容器本身。
另一个解决方案是启动一个 mysql docker 容器并指定其名称来代替 localhost...但我不想启动 mysql docker 容器,因为我已经安装了 mysql(并且需要卷配置来保存数据) 坚持)
提前致谢。
最佳答案
您需要将主机的 IP 映射到容器内的名称。你用
来做到这一点docker run --add-host mysqlhost:192.168.0.3 ...
您需要提供主机的 IP,而不是 192.168.0.3
那么您的连接字符串将为:jdbc:mysql://mysqlhost:3066/database_name
关于mysql - Dockerized spring boot 应用程序连接到主 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57546595/