2

While running a job using GitLab CI, I get the following error:

Running with gitlab-runner 15.0.0 (febb2a09)
  on machine-name-docker-02 1zeSaLUd
Preparing the "docker" executor 00:03
Using Docker executor with image ubuntu:22.04 ...
Pulling docker image ubuntu:22.04 ...
WARNING: Failed to pull image with policy "always": 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-limit (manager.go:203:1s)
ERROR: Job failed: failed to pull image "ubuntu:22.04" with specified policies [always]: 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-limit (manager.go:203:1s)

I understand this has to do with docker's rate-limits. They are currently of "200 container image pull requests per six hours" since my company does not have any paid subscription.

I am not using 200 different images: my company (on the same IP) is using less than 20 different images (I am absolutely sure we are not using 200 different images, let alone every 6 hours).

  • Does a GitLab CI runner use the cache from docker (making it download only images not already downloaded)?
  • If yes, is there any way to tell the runners to use the cached images?
  • Are pulls considered by docker as pulls even if the cache is used?

I have seen https://stackoverflow.com/a/68213856/5446749 but it feels like it's not what is happening in my case.

vvvvv
  • 25,404
  • 19
  • 49
  • 81

0 Answers0