我有一个“ dockerized” springboot应用程序,它需要mysql运行。
我已经在ubuntu上安装了mysql,并希望使用docker启动我的应用程序的容器,并且需要知道在数据库URL连接中指定什么,以便我的应用程序连接到我的ubuntu上安装的mysql。
jdbc:mysql://locahost:3066/database_name
之类的东西将不起作用,因为localhost指的是没有mysql实例的容器本身。
另一种解决方案是启动mysql docker容器并指定其名称代替localhost ...,但我不想启动mysql docker容器,因为我已经安装了mysql(并且需要进行卷配置以保留数据坚持)
谢谢。
答案 0 :(得分:1)
您需要将主机的IP映射到容器内的名称。您可以使用
docker run --add-host mysqlhost:192.168.0.3 ...
您需要提供主机的IP而不是192.168.0.3
然后您的连接字符串将为:jdbc:mysql://mysqlhost:3066/database_name