我正在主机上运行Mac的Docker Desktop,它正在运行两个容器。
Container-1:基于linux的操作系统,运行基于UDP的服务器程序,监听14xxx端口(udp://:14xxx/
)。
Container-2:基于linux的操作系统,python应用程序通过UDP地址以udp://14xxx/
的形式发送/接收数据,而没有任何特定的主机名。
问题:我在Container-2上的python应用程序能够在UDP端口上发送,但从未收到来自Container-1的任何信息。
鉴于UDP与TCP和HTTP协议的工作方式不同。。
各种事物我尝试过,但是没有运气。
尝试使用--network host
选项运行两个容器。
尝试创建新的docker网络testnet
,并使用--network testnet
选项启动了容器。
没关系。我找到了解决方案。
首先,这根本不是码头工人。
在我的Container-2]上的python应用程序中,我使用环境变量来确定UDP地址。显然,这些变量设置不正确。因此,混乱/错误。
第二,“-网络主机”对于两个正在运行的Docker容器来说仍然具有VALID参数,以确保它们彼此发现/交谈。
希望有帮助!