gpt4 book ai didi

docker - docker容器中的mariadb授权表:主机名和IP

转载 作者:行者123 更新时间:2023-12-02 20:07:02 26 4
gpt4 key购买 nike

我正在Docker容器中运行mariadb实例。它已连接到自定义网桥网络。我们在这里将其称为db_net
现在,我想从连接到同一网络的另一个容器连接到mariadb

我可以使用mariadb从另一个容器ping ping mariadb.db_net容器。它解析为一些172.x.x.x IP。

用数字IP在mariadb中设置授权表是可行的。但是很明显,这些可能会在修改后的设置中发生变化。我还想避免使用所有通配符(例如172.%.%.%),因为其他容器也可能使用相同的mariadb实例。

在Grants表中使用符号主机名(name.db_net)失败。

推荐的解决方法是什么?当然,可以使用主机字段中的所有通配符并依赖其他隔离机制,但是这样做似乎使我放弃了一层理想的安全性。

最佳答案

有时嵌入式DNS无法与Linux服务配合使用。最好的方法是使用DNS将主机名解析为IP地址。可以通过修改/ etc / hosts文件或使用第三方DNS服务器来实现。这样可以确保每当IP地址更改时,数据库特权仍然可以正常工作。

如果您选择在docker网络中设置DNS服务器,则必须使用该选项启动每个容器。

--dns=IP_ADDRESS

然后将提供的地址写入docker容器上的文件 /etc/resolv.conf中。

关于docker - docker容器中的mariadb授权表:主机名和IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48901185/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com