首页  >  文章  >  数据库  >  如何从 Docker 中的另一个容器连接到 MySQL 容器?

如何从 Docker 中的另一个容器连接到 MySQL 容器?

Susan Sarandon
Susan Sarandon原创
2024-10-28 00:20:02919浏览

How to Connect to a MySQL Container from Another Container in Docker?

从另一个容器连接到 MySQL 容器

您已经设置了一个运行 MySQL 并公开端口 3306 的 Docker 容器,但是如何才能您从另一个容器访问该数据库?

使用 IP 地址

最初,您尝试使用 MySQL 容器的 IP 地址 (172.17.0.2) 进行连接。虽然这可行,但并不理想,因为 IP 地址可能会更改。

用户定义的网络

更好的方法是使用用户定义的网络来连接容器。您可以创建一个网络并将 MySQL 和 PHP 容器附加到其上。

docker network create my_network

链接容器

在同一网络上运行两个容器,提供网络使用 --network 标志命名:

docker run -d --name php_container --network my_network my_php_image
docker run -d --name mysql_container --network my_network my_mysql_image

在该网络上的容器中,您可以解析容器名称并使用主机名进行连接。例如,从 PHP 容器,您可以使用以下方式连接到 MySQL:

$mysqli = new mysqli("mysql_container", "mattia", "prova", "prova");

结论

用户定义的网络提供了更强大、更灵活的连接方式Docker 中的容器。使用容器名称作为主机名可以简化访问并消除对 IP 地址的依赖。

以上是如何从 Docker 中的另一个容器连接到 MySQL 容器?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn