【问题标题】:Aws ECR task looks for image using :latestAws ECR 任务使用 :latest 查找图像
【发布时间】:2022-01-20 13:36:17
【问题描述】:

我们有一个 ecs 任务,它查找带有 :latest 标签的图像并将该图像部署到我们的集群中。

其中一个 :latest 图像有问题,因此我们删除了它,希望 aws 可能足够聪明,可以用 :latest 标记之前的图像

然而事实并非如此。现在我们当前的任务是否会因为找不到带有 :latest 标签的图像而无法运行?

谢谢

【问题讨论】:

    标签: amazon-web-services docker image task amazon-ecr


    【解决方案1】:

    可以下载之前的图片,标记:latest再推送。

    另一种方法是更新任务定义,其中容器映像是为容器引用的。

    没有 ECS 不会自动执行此操作,因为这可能不是每个人都想要的,或者无论如何都不是标准。每个图像都是唯一的,回滚到以前的图像可能是错误的要求。这就是为什么它不是默认行为。 ECS 任务定义镜像文档在这里:https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definition_image

    【讨论】:

    • 很酷,谢谢,我有一个想法,也许在部署时我们应该更新任务定义以使用新标记的图像(例如 build 123)而不是“最新”。似乎使用 latest 并不是引用图像的最佳方式。
    • 只要您不经常从 repo 中删除图像,通常会使用 latest 标签。或者整个推送/删除工作流程都通过极端情况正确实施。
    【解决方案2】:

    如果托管任务的节点或任务本身由于某种原因停止/失败,ECS 将尝试在节点上生成另一个任务,并且如果该节点没有本地缓存​​的 docker 映像副本,则该节点将尝试下载来自 ECR 的图像会失败,因为没有标记为 :latest 的图像。

    【讨论】:

    • 哦,老兄,谢谢,真的很高兴知道!
    • 我会选择这个作为答案,因为这正是我所追求的,尽管上面的侯赛因也非常有帮助!
    • 感谢@LeslieAlldridge!我也赞成侯赛因的回答,因为每个人都值得爱!
    猜你喜欢
    • 2018-08-05
    • 1970-01-01
    • 2021-10-30
    • 1970-01-01
    • 2021-07-27
    • 2023-03-16
    • 2019-08-20
    • 2021-01-21
    • 2021-06-01
    相关资源
    最近更新 更多