如何从AWS ECR容器注册表中删除未标记的图像

将图像推送到Amazon ECR时,如果该代码已存在于存储库中,则旧图像仍保留在注册表中,但处于未标记状态。

因此,如果我image/haha:1.0.0第二次泊坞窗推入,我会这样做(前提是发生了某些变化),因此第一张图像不会被标记AWS ECR

有没有一种方法可以安全地清除未标记图像中的所有注册表?

回答:

我实际上伪造了一线解决方案 aws cli

aws ecr describe-repositories --output text | awk '{print $5}' | while read line; do  aws ecr list-images --repository-name $line --filter tagStatus=UNTAGGED --query 'imageIds[*]' --output text | while read imageId; do aws ecr batch-delete-image --repository-name $line --image-ids imageDigest=$imageId; done; done

它正在做什么:

  • 获取所有存储库
  • 为每个存储库给我所有图像 tagStatus=UNTAGGED
  • 对于每个图像和存储库,发出一个 batch-delete-image

以上是 如何从AWS ECR容器注册表中删除未标记的图像 的全部内容, 来源链接: utcz.com/qa/399266.html

回到顶部