Container Registry adds frequently requested images to the cache so they are available for future requests. It also periodically removes images that are no longer requested.
After you configure the Docker daemon to use the Container Registry cache, Docker performs the following steps when you pull a public Docker Hub image with a docker pull command:
The Docker daemon checks the Container Registry cache and fetches the images if it exists. If your daemon configuration includes other Docker mirrors, the daemon checks each one in order for a cached copy of the image.
If the image still isn't found, the Docker daemon fetches the image from the canonical repository on Docker Hub.
Pulling cached images does not count against Docker Hub rate limits. However, there is no guarantee that a particular image will remain cached for an extended period of time. Only obtain cached images on
mirror.gcr.io by configuring the Docker daemon. A request to pull directly from
mirror.gcr.io will fail if a cached copy of the image does not exist.