如何将docker容器与主机的localhost mysql数据库连接?

Say*_*man 5 mysql docker

我有一个在后端使用MySQL数据库的war文件。我已将 war 文件部署在 docker 容器中,并且可以从浏览器中 ping 通该文件。我想将我的应用程序与 MySQL 数据库连接。该数据库存在于我的主机上localhost:3306

由于我无法从容器的本地主机内部连接它,所以我尝试运行一个命令docker inspect --format '{{ .NetworkSettings.IPAddress }}' 213be777a837 该命令给了我一个 IP 地址172.17.0.2。我进入 MySQL 服务器选项并将此 IP 地址放入绑定字段并重新启动服务器。之后,我更新了我的项目数据库连接字符串172.17.0.2:3306

但它不起作用。谁能告诉我我缺少什么吗?我还尝试使用 root@% 添加新的数据库用户,然后运行命令允许对“root@%”的所有权限,但没有任何效果。

Say*_*man 2

按照步骤:-

docker network create -d bridge --subnet 192.168.0.0/24 --gateway 192.168.0.1 dockernet
docker run -p 8082:8080 --network dockernet -d 6ab907c973d2
in your project set connection string : jdbc:mysql://host.docker.internal:3306/....
Run Code Online (Sandbox Code Playgroud)

然后部署。


归档时间:

查看次数:

9637 次

最近记录:

5 年,3 月 前