从其他容器访问mysql容器
我已经安装了带有mysql的docker容器,该容器公开了3306。我已经指定了数据库用户,数据库密码并创建了一个测试数据库,并将特权授予了新用户。
在另一个容器中,我想访问此数据库。
因此,我用一个简单的PHP脚本设置了新容器,该脚本在此db中创建了新表。
我知道mysql容器的ip是172.17.0.2这样:
$mysqli = new mysqli("172.17.0.2", "mattia", "prova", "prova");
比起使用mysqli,我创建了新表,并且一切正常。
但是我认为使用他的IP地址连接到容器不是很好。
还有另一种指定数据库主机的方法吗?我尝试使用mysql容器的主机名,但是它不起作用。
回答:
您需要在docker run命令中将docker容器与–link标志链接在一起,或者在docker-compose中使用链接功能。例如:
docker run -d -name app-container-name --link mysql-container-name app-image-name
这样,docker会将mysql容器的IP地址添加到应用程序容器的/ etc / hosts文件中。有关完整的文档,请参阅: MySQL
Docker容器:了解基础知识
以上是 从其他容器访问mysql容器 的全部内容, 来源链接: utcz.com/qa/408280.html