一尘不染

如何与在Docker中作为容器运行的MySQL DB连接?

docker

有人可以给我任何有关如何连接我的mysql db的想法吗,该数据库在Docker上的虚拟机上作为容器运行吗?

我对此一无所知,请帮助我。

我想做的是:-我正在本地计算机上编写一个Java程序,现在我想与mysql建立jdbc连接。我的MySQL数据库在虚拟机上作为docker容器运行。

有人有什么主意吗?

连接con = DriverManager.getConnection(“ jdbc:mysql://10.0.2.15/ ”我应该在这里放什么“
,” root“,” myrootpassword“);

我的容器IP地址是172.17.0.2,我的访客IP是10.0.2.15。我的SQL在端口3306上运行。

提前致谢


阅读 307

收藏
2020-06-17

共1个答案

一尘不染

您的Docker容器应该能够将其mysql端口绑定到VM上的任何端口。您可以-p VMPort:containerPort选择docker run

https://docs.docker.com/engine/reference/run/#expose-incoming-
ports

所以这个命令

docker run -p 3306:3306 your-sql-container

将容器的3306端口发布到VM的3306端口。

到那时,您应该能够使用

Connection con = DriverManager.getConnection("jdbc:mysql://10.0.2.15:3306/databaseName","root","myrootpassword");

我使用了您的VM地址和VM上的绑定端口。您应该用databaseName数据库的实际名称替换。

2020-06-17