You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用CLI命令删除ECR仓库中的所有镜像?

删除ECR仓库中所有镜像的AWS CLI命令

方法1:基于镜像摘要删除所有镜像(含无标签镜像)

这个方法会遍历仓库内所有镜像(包括没有标签的悬虚镜像),逐个执行删除操作。需要提前安装jq工具来解析JSON输出:

# 替换为你的ECR仓库名和区域
REPO_NAME="your-repo-name"
REGION="us-east-1"

# 获取所有镜像ID并循环删除
aws ecr list-images --repository-name $REPO_NAME --region $REGION --query 'imageIds[*]' --output json | jq -c '.[]' | while read image; do
  aws ecr batch-delete-image --repository-name $REPO_NAME --region $REGION --image-ids "$image"
done

方法2:无需jq的删除方式

如果你的环境没有安装jq,可以用AWS CLI的文本输出格式配合基础命令处理:

# 替换为你的ECR仓库名和区域
REPO_NAME="your-repo-name"
REGION="us-east-1"

# 遍历所有镜像摘要并删除
aws ecr list-images --repository-name $REPO_NAME --region $REGION --query 'imageIds[*].imageDigest' --output text | tr '\t' '\n' | while read digest; do
  aws ecr batch-delete-image --repository-name $REPO_NAME --region $REGION --image-ids imageDigest=$digest
done

关键注意事项

  • 操作不可逆:执行前务必确认你确实需要删除仓库内所有镜像
  • 权限要求:确保你的AWS CLI身份拥有ecr:ListImages和ecr:BatchDeleteImage权限
  • 依赖检查:方法1需要系统安装jq工具(多数Linux/macOS环境可通过包管理器安装)
  • 批量限制:batch-delete-image单次最多删除100个镜像,以上命令通过循环规避了这个限制

内容的提问来源于stack exchange,提问作者Luv

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 23:39:16