【问题标题】:How to tag new version of an image, when deploying to ECR on AWS?部署到 AWS 上的 ECR 时,如何标记新版本的图像?
【发布时间】:2020-05-17 07:07:21
【问题描述】:

我想在 AWS Fargate 中运行我的 docker 映像,所以我遵循了这个简单的 tutorial。基本上,我在我的计算机上创建了一个图像并将其推送到 ECR。本教程(以及 AWS“推送命令”备忘单)建议将图像标记为 最新

所以我做到了,我将它标记为“最新”,我将它推送到 ECR,我创建了集群和任务,并在 Fargate 中成功运行了这个图像。但是现在我很困惑,因为我在图像中修复了一些东西并想部署新版本。我应该如何标记新图像?

我应该重命名以前的图像,新的图像应该再次“最新”吗?所有教程我都找到了如何将第一个图像部署到 ECR 的教程。但是我找不到任何可以显示如何部署新版本的东西?

谢谢,

【问题讨论】:

    标签: amazon-web-services amazon-ec2 amazon-ecs aws-fargate amazon-ecr


    【解决方案1】:

    您不必重命名之前的图像,但如果您想保留它,您应该这样做。当有另一个图像为latest 时,标记为latest 将用新图像替换旧图像。您在 ECS 中的任何新任务实例都将拾取新映像,但 ECS 不会自动替换现有任务。您必须手动执行此操作(显然您可以通过编程方式执行此操作)。

    请注意,此类教程并不总是针对生产工作负载而设计。它们旨在让您工作。这不是管理 ECS 任务更新的最佳方式。

    【讨论】:

    • 感谢 Jason,我知道,我当时正试图迈出一步。那么,我需要创建新任务并删除旧任务吗?
    • 如果您停止旧任务,则会自动启动一个新任务来替换它,假设您已将服务设置为执行一项任务。
    • 不,我只有一个任务。我认为对于生产来说,创建服务而不只是任务会更有意义。是这样吗?
    • 是的。在生产中,我会为您的任务创建服务。该服务还为您提供了管理自动缩放等事务的地方。
    猜你喜欢
    • 1970-01-01
    • 2020-07-03
    • 2016-05-30
    • 1970-01-01
    • 2017-04-18
    • 2018-03-25
    • 2020-06-05
    • 2015-12-14
    • 2020-02-29
    相关资源
    最近更新 更多