首页 > 解决方案 > docker 中的 UDP 端口映射似乎不适用于我的 dot net 5 应用程序

问题描述

我有一个 dot net 5 应用程序在端口 5002 上侦听 UDP 连接。

当我直接在我的机器上运行应用程序时,我可以使用 UDP 成功连接:

但我想做的是在 docker 容器中运行我的应用程序。所以我使用 dockerfile 来构建我的应用程序并放置在基于以下图像的容器中:mcr.microsoft.com/dotnet/sdk:5.0

然后我使用 Bridge 网络模式运行容器,但在尝试从主机连接时无法使用 UDP:

请注意,我在 docker-compose 文件中映射端口:

ports:
            - "5000:5000"
            - "5001:5001"
            - "5002:5002/udp"

端口 5000 和 5001 的映射运行良好,因为我能够使用来自主机的这些端口向我的应用程序发送 HTTP 请求。

但是我该怎么做才能使 UDP 端口映射在端口 5002 上工作?

标签: dockerudp.net-5

解决方案


推荐阅读