34

我刚刚使用 Azure 多容器实例部署了一个 Web 应用程序(node.js 容器和 mongo 容器)。它有点像 Docker Compose,但适用于 Azure 特定的 yaml 文件:https ://docs.microsoft.com/en-us/azure/container-instances/container-instances-multi-container-yaml

现在我看到有一个叫做“Azure Web App for Containers”的东西。这似乎适用于真正的 docker compose yaml 文件。

除了配置文件格式,还有其他区别吗?

注意:我说的是 Azure 容器实例而不是Azure 容器服务

4

3 回答 3

27

好吧,azure 容器实例只在容器处于活动状态时向您收费,而 webapp 在 webapp 存在时向您收费(一直如此)。这是它们之间最大的区别之一。

但总的来说,我会说 Azure Web App for Containers 只是在现有“东西”上运行容器的捷径。我最近了解到 Azure Web App for Containers 提供了 kubernetes 功能,因此这两种服务的发展方向略有不同。Azure Web App for Containers 针对长期运行的东西(始终运行),而 ACI 针对计划的\突发的\短期工作负载(类似于 Azure Functions)。

于 2019-02-06T10:24:08.193 回答
5

用 MS-staff answer找到了这个链接。

总之

Web 应用程序的容器

  • 如果您已经熟悉 Azure Web App 环境,建议您使用。
  • 如果您有一个或几个正在部署的长期运行的容器/服务,则最好。
  • 可以使用自定义 Docker 映像在 Azure 中尚未定义的应用程序堆栈上运行 Web 应用程序

Azure 容器实例

  • “对于可以在隔离容器中运行的任何场景,包括简单的应用程序、任务自动化和构建作业,Azure 容器实例都是一个很好的解决方案”
  • 一种快速、轻量且简单的容器运行方式 按容器处于活动状态的时间计费(计费基于秒、内核和内存)
  • 可以在几秒钟内启动 Azure 中的容器,无需预配和管理 VM。
  • 还可以通过实验性 ACI 到 Kubernetes 连接器与 Kubernetes 一起工作
  • 目前,在 Azure 上部署容器的最快方式
  • 根据 Azure 文档,“Azure Container Instances 保证您的应用程序在容器中与在 VM 中一样隔离。”
于 2021-02-10T12:55:06.167 回答
4

除了另一个答案之外,另一个区别是 Web App for Containers 提供了“插槽”,您可以使用这些“插槽”在相同的分配资源上运行多个图像,以帮助提高利用率。由于容器实例按使用时间计费,因此它们没有“插槽”。

于 2020-11-03T17:00:40.717 回答