当前位置: 首页 > 知识库问答 >
问题:

Azure应用服务:包含三个容器的多容器应用(如何处理)

晋西岭
2023-03-14

Azure应用服务:多容器应用

我使用Azure应用服务来部署我的Spring应用程序。

作为我需求的一部分,需要三个容器(2个用于应用程序,1个用于数据库)。应用映像具有可部署的工件(war),两个具有不同的上下文路径(从web url/*和 /test访问),具有相同的端口(8080)。

取样。yml

version: '3'
services:
  Web1:
    image: dockerhub.com/.../AppSample_Web1
    restart: always
    ports:
      - 9080:**9080**
  
  web2:
    image: dockerhub.com/.../AppSample_Web2
    restart: always
    ports:
      - 9081:**9080**
  DB:
   image: dockerhub.com/.../OracleDB..:latest

我尝试了上述过程,但无法访问应用程序页面。如何处理端口在这种情况下,我的两个容器具有相同的端口。

共有1个答案

熊朝
2023-03-14

正如杰森所说,Linux机器不支持虚拟应用。

Linux应用程序服务上的虚拟目录配置与Windows应用程序服务上的配置方式不同。

Windows应用服务的虚拟目录配置直接映射到IIS的虚拟目录功能,因为该平台上的所有网站都由IIS托管。在Linux应用服务上,您可以自由使用任何您喜欢的Web服务器技术,并根据需要对其进行配置。

目前,实现这一点的最简单方法是使用所需的设置对应用程序进行容器化,或者分叉现有的内置容器。

您可以为集装箱化应用程序添加自定义存储。容器化应用程序包括所有Linux应用程序以及在应用程序服务上运行的Windows和Linux自定义容器。

有关更多详细信息,请参阅本文。

 类似资料:
  • Azure容器服务和Web App for Containers有什么区别? 它们似乎都提供了一个完全托管的平台,我们可以在这个平台上部署容器。我觉得容器的Web应用程序必须提供更多的东西,但我没有看到。我已经阅读了Azure Container Service FAQ和Web App for Containers intro page,但对我来说区别并不明显。

  • 在独立AEM安装中,felix OSGi容器是否存在于jetty servlet容器中?或者Jetty服务器是作为捆绑包安装在Felix OSGi容器中的? AEM启动时,哪一个将首先启动? 对于基于战争的安装,这将如何改变? 根据这个答案,两者都是可能的。但我想知道AEM采用哪种方法。

  • 我已经创建了一个非常简单的discord机器人,并试图在azure上托管它。当我在本地运行它时,它工作得很好。当我部署它时,它可以正常工作一段时间,然后崩溃并重新启动。 我明白了 我没有设置docker,所以我猜azure是为我做的。 我的包裹是这样的 我的代码是这样的。 有人知道解决办法吗?

  • 我过去曾在Azure应用服务上发布过一系列Docker应用,但由于某些原因,在Azure运营模式中创建新的生成和发布管道后,我的Docker容器将无法在Azure应用服务中运行。这些特殊的容器味道Linux。 在各种Docker映像之间切换,任何使用旧管道构建的映像都可以工作,但使用新管道构建的映像则不行。 当我将应用程序服务的日志文件中的确切命令复制粘贴到本地命令行时,它工作得很好。我可以使用与

  • 我在azure中有一个运行docker容器的应用程序服务。 日志显示它正在使用下面的docker run命令运行。我隐藏了一些私人公司的价值观。 docker run-d-p 4040:443--name hidden-e WEBSITE\u SITE\u name=hidden-e WEBSITE\u AUTH\u ENABLED=False-e PORT=443-e WEBSITE\u ROL

  • 我创建了一个运行docker容器的Azure应用服务。 但是容器似乎一直在重新启动:2020-01-09 07:21:56.543INFO-用于站点xxx的容器xxx初始化成功,并准备好服务请求。2020-01-09 07:22:01.559错误-用于站点xxx的容器不健康,停止站点。2020-01-09 07:22:01.559INFO-停止站点xxx,因为它是不健康的。 由于它是一个资源密集型