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

非镜像制品被Amazon ECR「清理孤立制品」规则删除的疑问及解决咨询

Amazon ECR "Clean orphan artifacts" 内置规则问题解析

该规则是ECR内置规则吗?

是的,这是ECR针对OCI非镜像制品的内置生命周期规则,属于ECR对OCI生态的默认管理逻辑。当仓库启用OCI制品支持后,该规则会自动生效,优先级默认设为1,主要用于清理无合法引用的孤立制品,官方文档中未单独突出说明,但属于ECR后台默认运行的清理机制。

为什么我的制品被判定为孤立?

ECR定义“孤立制品”为未被任何镜像清单(manifest)或其他OCI对象引用的独立制品,常见场景包括:

  • 推送的是单独的OCI元数据(如SBOM、配置文件),未通过OCI Referrers机制关联到任何镜像;
  • 关联该制品的镜像清单已被删除,导致制品失去引用链路;
  • 上传制品时未建立引用关系,仅作为独立对象存入ECR仓库。

规则中的countType: "Cleanup orphan artifacts"和countNumber: 1表示:制品被标记为孤立后,会在1天后触发删除(具体时长以ECR内部逻辑为准)。

如何避免制品被删除?

可以通过以下方法阻止内置规则清理你的非镜像制品:

  • 关联制品到镜像清单:使用OCI Referrers功能,将元数据制品绑定到对应的镜像manifest。比如用skopeo工具推送带引用的制品,或通过AWS CLI的aws ecr put-image命令配置referrers,让ECR识别到制品存在合法引用,不再标记为孤立。
  • 创建高优先级保留规则:ECR规则优先级数值越小,优先级越高,因此你可以创建优先级为0的自定义规则,筛选需要保留的制品(比如按标签前缀、artifact类型匹配),设置更长的过期时间或保留数量,覆盖内置规则的清理逻辑。示例规则:
    {
      "rulePriority": 0,
      "description": "Retain metadata artifacts",
      "lifecycleEventSelection": {
        "tagStatus": "Any",
        "tagPatternList": ["metadata-*"],
        "countType": "imageCountMoreThan",
        "countNumber": 100
      },
      "action": "expire"
    }
    
  • 维护引用关系:避免删除与非镜像制品关联的镜像清单;若需删除镜像,先将关联的元数据制品重新绑定到其他镜像,或通过自定义规则设置单独保留。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 21:05:03