将带有test
标签的docker映像推入ECR后,不止一次,较旧的docker映像在ECR中未加标签
删除CLI中未标记图像的AWS CLI命令是什么?
发生的事情是,当您发布image:tag
时,标记将从上一个图像中删除。
您可以运行CLI命令来识别未标记的图像,并将输出通过管道传递到命令以删除这些图像。
您还可以使用生命周期策略。
请参阅下面的链接。我自己还没有测试过。
参考: How to delete untagged images from AWS ECR Container Registry
https://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html
,您可以使用 AWS 最近添加的 ECR 生命周期策略https://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html
,您可以尝试使用aws cli-在您的ecr存储库所在的位置设置正确的AWS区域。
AWSREGION=us-west-2 && ecr describe-repositories --region=$AWSREGION --output text | awk '$5{print $5}' | sed -n 's/.*repository\/\(.*\)/\1/p' | while read line; do aws ecr list-images --region=$AWSREGION --repository-name "$line" --filter tagStatus=UNTAGGED --query 'imageIds[*]' --output text | while read imageId; do aws ecr batch-delete-image --region=$AWSREGION --repository-name "$line" --image-ids imageDigest=$imageId; done; done
此命令将递归删除所有未标记的图像。希望这能解决您的问题。