【问题标题】:How to expose web app for container on two different ports in azure?如何在 azure 的两个不同端口上公开容器的 Web 应用程序?
【发布时间】:2019-07-10 15:41:14
【问题描述】:

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

我们的网络应用可以在本地完美运行。

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

更新

为此我联系了 Azure 支持团队,他们回复:

" Web App for Containers 目前只允许您向外界公开一个端口。这意味着您的容器只能在单个端口上侦听 HTTP 请求。一些应用程序需要多个端口。例如,您可能有一个用于向应用程序发出请求的端口和一个用于仪表板或管理门户的单独端口。截至今天,该配置在 Web App for Containers 中是不可能的。

我们将尝试检测将哪个端口绑定到您的容器,但您也可以使用 WEBSITES_PORT 应用设置并使用您要绑定到容器的端口的值对其进行配置。

所以,很抱歉,您不能为同一个网络应用程序使用 2 个端口。”

【问题讨论】:

    标签: azure docker


    【解决方案1】:

    对于您的问题,您应该知道 Azure Web App 和 Azure Container Instance 之间存在差异。

    在 Azure Web App 中,您只能使用两个端口:80 和 443。默认情况下它们是公开的。您只需要在容器中收听其中一个或两个。但是在 Azure Container Instance 中,你可以随意公开你在容器中使用的所有端口。

    所以对于 Container 的 Web 应用来说,如果这两个端口不是 80 和 443,那么你就不能暴露它们。

    【讨论】:

    • 天啊,这是非常严格的。
    【解决方案2】:

    您必须使用虚拟机在 azure 上完成此操作,因为它们不允许 80 和 443 以外的端口。 我一直处于同样的情况,我能找到的唯一解决方案是使用虚拟机。 所以我创建了一个带有入站端口的虚拟机,它接受来自 2 个端口的流量,它工作正常。

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

    【讨论】:

      猜你喜欢
      • 2018-07-19
      • 2016-04-10
      • 1970-01-01
      • 2022-10-25
      • 2015-11-07
      • 1970-01-01
      • 1970-01-01
      • 2020-04-02
      • 2022-01-25
      相关资源
      最近更新 更多