Table of Contents

How to manually cache images in Rahti's registry

Since 2nd November 2020, docker hub has imposed a rate limit for image pulls. For Rahti this means a limit of 100 pulls every 6 hours. This limit can be easily reached and it prevents new applications to be deployed if the image is in docker hub.

The error looks like this:

Pulling image "docker.io/centos/python-38-centos7@sha256:da83741689a8d7fe1548fefe7e001c45bcc56a08bc03fd3b29a5636163ca0353" ...
pulling image error : toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit

One solution is to add docker hub credentials to a project. Each docker hub account (even the free ones), has a limit of 200 pulls every 6 hours. Also the limit will be applied to the pulls made by that account, meanwhile before the limit was shared by all Rahti projects.

Other solution is to cache manually the image in Rahti's internal registry. The process is simple:

Create Image

Create Image II

  • Find the login command and use it to login in the terminal.

Login command

  • Pull the image from docker hub in your laptop, tag it with the same name, and push it to Rahti's registry. For example to cache centos:7:
docker pull centos:7
docker tag centos:7 docker-registry.rahti.csc.fi/$PROJECT/centos:7
docker push docker-registry.rahti.csc.fi/$PROJECT/centos:7

This has to be repeated for every new tag change.

Last edited Fri Dec 4 2020