Enable Container Registory Mirror for Gitlab Runner
As we are observing docker hub rate limiting our connections, it might worth exploring the possibility of using an external mirror for caching all the docker hub images, instead of having manual case by case mirroring.
The document for such mirroring seems to work. As for the choice of mirror, we can add public.ecr.aws/docker
and mirror.gcr.io
to the mirror list. The way this kind of mirror works is that when one cache fails, the next time will be automatically tried. In this way we don't need to worry about the 500G quota from AWS ECR, as it will just fall over to the next one.
This would work the same as /etc/containers/registries.conf
with:
unqualified-search-registries = ["docker.io"]
[[registry]]
prefix = "docker.io"
location = "docker.io"
[[registry.mirror]]
location = "public.ecr.aws/docker"
[[registry.mirror]]
location = "mirror.gcr.io"
See also: #41914 (closed) #40335 (closed)