加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

amazon-web-services – 如何从AWS ECR Container Registry中删

发布时间:2020-12-16 03:36:57 所属栏目:安全 来源:网络整理
导读:将图像推送到Amazon ECR时,如果标记已存在于repo中,则旧图像仍保留在注册表中,但处于未标记状态. 所以,如果i docker push image / haha??:1.0.0我第二次这样做(假设有些事情发生了变化),第一张图片就会从AWS ECR中取消标记. 有没有办法从未标记的图像中安全

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

所以,如果i docker push image / haha??:1.0.0我第二次这样做(假设有些事情发生了变化),第一张图片就会从AWS ECR中取消标记.

有没有办法从未标记的图像中安全地清理所有注册表?

最佳答案
您可以在单个请求中删除所有图像,而无需循环:

IMAGES_TO_DELETE=$( aws ecr list-images --region $ECR_REGION --repository-name $ECR_REPO --filter "tagStatus=UNTAGGED" --query 'imageIds[*]' --output json )

aws ecr batch-delete-image --region $ECR_REGION --repository-name $ECR_REPO --image-ids "$IMAGES_TO_DELETE" || true

首先,它以json格式获取未标记的图像列表:

[{“imageDigest”:“sha256:…”},{“imageDigest”:“sha256:…”},…]

然后它将该列表发送到批处理图像删除.

最后一个||如果没有未标记的图像,则需要true以避免错误代码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读