如何在azure中的两个不同端口上公开容器的web应用程序?

如何在azure中的两个不同端口上公开容器的web应用程序?,azure,docker,Azure,Docker,我们的web应用程序在两个端口上运行azure web应用程序默认公开端口80,我们在第1部分中使用了该端口,但在第2部分中,我们需要另一个端口如何公开它 我们的web应用程序在本地计算机上运行良好 我们的web应用程序在两个端口的容器实例上完美运行(在创建容器实例时,Azure中有一个用于多个端口的选项) 更新: 我就此联系了Azure支持团队,他们回答: " Web App for Containers当前只允许您向外部世界公开一个端口。这意味着您的容器只能在单个端口上侦听HTTP请求。某些

我们的web应用程序在两个端口上运行azure web应用程序默认公开端口80,我们在第1部分中使用了该端口,但在第2部分中,我们需要另一个端口如何公开它

我们的web应用程序在本地计算机上运行良好

我们的web应用程序在两个端口的容器实例上完美运行(在创建容器实例时,Azure中有一个用于多个端口的选项)

更新

我就此联系了Azure支持团队,他们回答:

" Web App for Containers当前只允许您向外部世界公开一个端口。这意味着您的容器只能在单个端口上侦听HTTP请求。某些应用需要多个端口。例如,您可能有一个端口用于向应用发送请求,另一个端口用于仪表板或管理门户。如图所示如今,这种配置在容器的Web应用程序中是不可能的

我们将尝试检测要绑定到容器的端口,但您也可以使用Web\u port app设置,并使用要绑定到容器的端口的值对其进行配置


因此,很抱歉,您不能为同一web应用使用2个端口。“

对于您的问题,您应该知道Azure web应用和Azure容器实例之间存在差异

在Azure Web应用程序中,您只能使用两个端口:80和443。而且它们在默认情况下是公开的。您只需要在容器中听其中一个或两个。但在Azure容器实例中,您可以根据需要公开容器中使用的所有端口


因此,对于容器Web app,如果这两个端口不是80和443,则您无法公开它们。

您必须在azure上使用虚拟机来完成此操作,因为它们不允许80和443以外的端口。 我也遇到过同样的情况,我能找到的唯一解决办法就是使用虚拟机。 因此,我创建了一个虚拟机,其入站端口接受来自2个端口的流量,并且工作正常

我还为此联系了azure支持部门,他们还建议使用虚拟机