K8s pull rate limit error

we noticed this problem here with Agola by making the describe on a “agola-task” pod when Agola start a run:
toomanyrequests: you have reached the pull rate limit. You can increase the limit by logging in and updating: https://www.docker.com/increase-rate-limit

I tried to setup DOCKER_HOST variable in the Agola deployment.yaml but it didn’t work

Someone has some hints?

Since docker limited the unauthenticated pull limit you could avoid this by defining a dockerhub auth in your agola config.

Anyway in agola we should avoid force pulling busybox images and let the agola admin define a different repository for the initial busybox image:

With the latest master we’ll use dockerhub busybox:stable as the default init image so it won’t be fetched any time a task is started if it’s already available on the local k8s/docker node. We don’t need an always up to date busybox image and every image (besides bugs) should work.

To further improve this you can also define a custom image (and optional registry auth) in the agola config.yml executor part (Configuration | Agola) so you can pull the init image (must be a busybox image) from a different registry than dockerhub and avoid pull limits. In future we could move the default init image to a different registry that doesn’t have such pull limits (github container registry?).

executor:
  [...]
  # initial image used by the task setup phase. By default it'll be
  # busybox:stable (on dockerhub), to avoid possible pull errors due to
  # dockerhub limits you can define your own custom init image (it must be a
  # busybox like image) and optional registry authentication.
  initImage:
    image: "busybox:stable"
    #auth:
      # auth type: basic or encodedauth
      #type: "basic"
      #
      # basic auth
      #username: "username"
      #password: "password"
      #
      # encoded auth string
      #auth: "..."

Images with latest (or empty) tag will always be fetched. In future we could also add an option to always force fetching (like k8s pull image policy).

As suggested we tried to configure the executor with the initImage parameter to use a different registry.
We found that agola does not use the value of the initImage parameter indicated by us.
The version of Agola we use is 0.6.0.
We looked at the source code of Agola 0.6.0 and we see that the image name is hardcoded “busybox”.
Is there something we can do to solve the problem?

@alessandro-sorint The feature has been implemented in git master after your first message, so has not yet been releases. You should compile agola from git.

Thanks @sgotti I compiled Agola it is working now