429 policy network_error ai_generated true

Error response from daemon: toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limits

ID: policy/docker-hub-pull-rate-limit-exceeded-anonymous

Also available as: JSON · Markdown · 中文
90%Fix Rate
90%Confidence
1Evidence
2023-09-01First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
Docker Engine v20.10+ active
Docker Hub rate limits (Nov 2020) active

Root Cause

Docker Hub enforces rate limits on anonymous users (100 pulls per 6 hours) and authenticated free users (200 pulls per 6 hours); the CI/CD pipeline or developer machine exceeded this limit.

generic

中文

Docker Hub 对匿名用户(每 6 小时 100 次拉取)和经过身份验证的免费用户(每 6 小时 200 次拉取)实施速率限制;CI/CD 管道或开发机器超出了此限制。

Official Documentation

https://docs.docker.com/docker-hub/download-rate-limit/

Workarounds

  1. 90% success Authenticate with Docker Hub using docker login to increase the limit to 200 pulls per 6 hours for free accounts.
    Authenticate with Docker Hub using docker login to increase the limit to 200 pulls per 6 hours for free accounts.
  2. 85% success Use a Docker Hub paid subscription (Pro/Team) for unlimited pulls, or mirror images to a private registry like Amazon ECR or GitHub Container Registry.
    Use a Docker Hub paid subscription (Pro/Team) for unlimited pulls, or mirror images to a private registry like Amazon ECR or GitHub Container Registry.

中文步骤

  1. 使用 docker login 登录 Docker Hub,将免费账户的限制提高到每 6 小时 200 次拉取。
  2. 使用 Docker Hub 付费订阅(Pro/Team)获得无限拉取,或将镜像镜像到私有仓库(如 Amazon ECR 或 GitHub Container Registry)。

Dead Ends

Common approaches that don't work:

  1. 40% fail

    Works but is impractical for CI/CD pipelines that need immediate builds; also, the limit resets based on a rolling window, not a fixed time.

  2. 80% fail

    The rate limit applies per image pull, not per tag; changing tags does not bypass the limit.