微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将数据包从一个 docker 网络路由到另一个

如何解决如何将数据包从一个 docker 网络路由到另一个

我有一台运行多个 Web 应用程序的服务器,每个应用程序都在自己的 docker 容器中。许多这些应用程序都有数据库容器。我想使用 docker 容器中的 prom/MysqLd_exporter 将这些数据库连接到我的 prometheus docker 容器。

所有应用程序都是使用 docker-compose 创建的,每个应用程序使用自己的网络(172.16.nn.0/24,其中每个应用程序的 nn 不同)。即使数据库暴露了一个端口,也都绑定到127.0.0.1,所以除了主机本身无法连接。

我的计划是有一个监视器 docker-compose 文件,每个数据库都有一个 MysqLd_exporter,直接连接到每个应用程序的数据库容器中相应的 IP 地址端口 3306。

我正在运行 ufw(防火墙)。当然,我对 docker 阻止其不同网络之间的路由这一事实感到不快。

一种解决方案是将每个 MysqLd_exporter 添加到与它要监视的数据库相同的 docker-compose 文件中。但是不必更改网络应用程序的 docker-compose 文件真的很好。

是否有另一种强大的方式允许不同容器中的特定 IP 地址和端口之间的连接,或者我必须硬着头皮修改应用程序 docker-compose 文件

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。