使用多个容器更新 Azure 容器实例中的单个容器

Update a single container in an Azure container instance with multiple container

我们在 Azure 中有一个 Azure 容器实例 运行ning,其中部署了多个容器(通过 yaml 文件)。当我们 运行 更新时,我们每次都必须 运行 完整的 yaml 文件,并修改一些值(即图像 ID)。

我们想分解我们的代码,以便我们有更多的微服务开发方法(单独的存储库,单独的 devops 管道)。是否可以指示容器实例更新一个容器(例如从一组 4 个)而不提交所有容器的值?

例如,如果我们可以让每个 repo 包含一个只更新 aci 中的一个实例的管道,那就太好了。请注意,我认为可能会发生的情况是,我们在为一个容器提交更新时可能会出错,因为 aci 认为我们正在尝试提升 3 个容器并更新其中一个(如果我们有一组 4 个)。

如果不可能,是否有任何其他方法可以实现相同的目标,而不必升级到 Kubernetes?理想情况下,我们不希望仅仅因为需要管理开销就必须使用 Kubernetes。

您不能更新容器组中的单个容器。每当组的任何部分更新时,所有容器都会重新启动。

您要单独更新的每个容器都需要在其自己的组中。如果拆分容器,容器将不再 运行 在同一主机上,您将无法通过本地主机访问其他服务(您将必须使用容器组的 DNS 名称)。

如果您的某些容器服务于作为单个服务器路径公开的端点,您将需要设置类似 Azure Front Door 的东西来启用基于路径的路由,以便流量可以通过单个主机名访问正确的服务.