Docker rate limit

I keep having jobs that fail because of this

WARNING: Event retrieved from the cluster: Failed to pull image "python:3.6.10": failed to pull and unpack image "docker.io/library/python:3.6.10": failed to copy: httpReadSeeker: failed open: unexpected status code https://registry-1.docker.io/v2/library/python/manifests/sha256:6655d57ae9272f09839a25d0ec0d272513663d99a4ad7af8b061c83a76d10295: 429 Too Many Requests - Server message: toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit

for instance https://gitlab.cern.ch/atlas-physics/pmg/mcjoboptions/-/jobs/49383640. Re-running worked fine but I imagine if I'm having this issue, everyone else is too.

Can the docker image be cached or something, so we only need to pull it once rather than every time we run a pipeline?

Or maybe it's as simple as swapping to a cern-hosted image like:

name: python:3.6.10 --> name: gitlab-registry.cern.ch/python:3.6.10

@sargyrop tagging you since you seem to be the one looking after the CI