[CI Failure]: docker-build-image failing repo-wide — ECR ‘vllm-ci-test-repo’ hit its 100k image cap

用户在 vLLM 项目的 GitHub PR 中触发 docker-build-image CI 步骤(通过 Buildkite 运行)时,镜像构建成功但推送到 ECR 仓库失败。该问题在 GitHub Issue #48065 提交时影响所有 PR 的 CI 流程。

[CI Failure]: docker-build-image failing repo-wide — ECR 'vllm-ci-test-repo' hit its 100k image cap

[CI Failure]: docker-build-image failing repo-wide — ECR ‘vllm-ci-test-repo’ hit its 100k image cap

快速结论:该报错表示 vLLM 的 CI 系统在推送 Docker 镜像时,目标 ECR 仓库镜像数量已超过 100,000 上限。优先联系仓库管理员对 ECR 仓库执行清理或生命周期策略。

问题场景

用户在 vLLM 项目的 GitHub PR 中触发 docker-build-image CI 步骤(通过 Buildkite 运行)时,镜像构建成功但推送到 ECR 仓库失败。该问题在 GitHub Issue #48065 提交时影响所有 PR 的 CI 流程。

报错原文

ERROR: failed to push public.ecr.aws/q9t5s3a7/vllm-ci-test-repo:<sha>: denied:
The repository with name 'vllm-ci-test-repo' in registry with id 'q9t5s3a7'
already has the maximum allowed number of images which is '100000'

原因分析

CI 使用的 Amazon ECR(Elastic Container Registry)仓库 vllm-ci-test-repo 已达到默认的最大镜像数量限制 100,000 个。每次 PR 构建都会推送一个新标签(<sha>),导致仓库长期积累后达到上限。这属于 CI 基础设施资源耗尽问题,不是代码或配置错误。

环境排查

  • 确认受影响 CI 步骤:docker-build-image(Buildkite pipeline)
  • 确认 ECR 仓库名:vllm-ci-test-repo(registry id: q9t5s3a7
  • 检查时间线:最后一次成功在 2026-07-08 21:46(UTC),约 22:03 开始持续失败
  • 无关的观察:同日 AMD mi325 节点曾出现 Docker 守护进程连接失败、Docker Hub 推送报 “unknown: invalid content range” 等问题,但与当前 ECR 容量报错无关

解决步骤

  1. 由仓库管理员(在本例中为 @khluu)对 ECR 仓库 vllm-ci-test-repo 执行清理操作,例如删除旧镜像或配置生命周期策略来自动清理。
  2. 清理后,重新触发失败的 docker-build-image CI 步骤。

验证方法

重新运行 docker-build-image 步骤,确认镜像能成功推送到 ECR 仓库。本案例中,清理后约在 04:04 UTC 所有 PR 的该步骤重新变绿。

参考来源

vllm-project/vllm #48065

celebrityanime
celebrityanime
文章: 12026

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注