我有几个容器在由docker-compose控制的堆栈中运行。其中有一个正在运行的node-red。
节点红色容器需要能够在网络中搜索主机网络(192.168.1.0/24)上的设备。
使用默认网络,当容器知道IP时,它们可以ping并连接到主机网络,不幸的是,节点-red实现只扫描本地网络,并且它只有docker网桥网络(172...)所以它只在那里搜索。
我尝试了docker网络设置的多种组合,试图让容器将192网络视为本地网络。当我能够获得192的网络地址时,容器不能ping通外部(到主机)网络上的其他主机。
TLDR: Docker容器需要能够看到其他docker容器,并且在主机网络上也有一个IP地址,并且能够连接到主机网络上的其他服务。
发布于 2021-06-07 14:57:38
好吧,我找到了一个适合我的解决方案:
在docker-compose.yml文件中
app:
image: youimage
network_mode: "host"添加network_mode: "host"正是我所需要的
https://stackoverflow.com/questions/67866166
复制相似问题