<p>Error : Failed to pull image &quot;busybox&quot;: rpc error: code = Unknown desc = Error response from daemon: toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: <a href="https://www.docker.com/increase-rate-limit" rel="nofollow noreferrer">https://www.docker.com/increase-rate-limit</a></p>
<p>To fix this I have added the login credentials</p>
<pre><code>apiVersion: v1
  data:
    .dockerconfigjson: xxxx
   kind: Secret
   metadata:
     creationTimestamp: null
     name: pullsecretgeneric
   type: kubernetes.io/dockerconfigjson
</code></pre>
<p>and also added to the deployment yaml</p>
<pre><code>template:
      metadata:
        labels:
          component: {{ .component }}
      spec:
        imagePullSecrets:
         - name: pullsecretgeneric
         - name: pullsecret
</code></pre>
<p>Then using helm install to do the installation
But still I get this error
Do I need to do add somewhere else</p>
<p>Config.json</p>
<pre><code>{
    &quot;auths&quot;: {
        &quot;https://registry.hub.docker.com&quot;: {
            &quot;auth&quot;: &quot;xxxx&quot;
        }
    }
}
</code></pre>
<p>Any pointers to fix this</p>

<p><strong>1 .</strong> On November 20, 2020, rate limits anonymous and free authenticated use of Docker Hub went into effect. Anonymous and Free Docker Hub users are limited to 100 and 200 container image pull requests per six hours. You can read <a href="https://docs.docker.com/docker-hub/download-rate-limit/" rel="nofollow noreferrer">here</a> for more detailed information.</p>
<p>As stated in the <a href="https://www.docker.com/increase-rate-limits/" rel="nofollow noreferrer">documentation</a> :</p>
<blockquote>
<p>The rate limits of 100 container image requests per six hours for anonymous usage, and 200 container image requests per six hours for free Docker accounts are now in effect. Image requests exceeding these limits will be denied until the six hour window elapses.</p>
</blockquote>
<p>So as a workaround you can either:</p>
<ul>
<li>Reduce your pull rate.</li>
<li>Upgrade your membership.</li>
<li>Setup your own docker proxy to cache containers locally</li>
</ul>
<p>To overcome docker hub pull rate limit refer to the <a href="https://container-registry.com/posts/overcome-docker-hub-rate-limit/" rel="nofollow noreferrer">documentation</a> and also refer to the <a href="https://stackoverflow.com/a/65020370/15745153">stackpost</a>.</p>
<p><strong>2 .</strong> Another workaround is to pull the image locally once, push it to your local docker repository and then update your image properties to point to your local repository.</p>
<p>You have to pull the images locally using your credentials and push it to your local (internally hosted) docker repository. Once pushed, update the deployment.yaml file with updated image link.</p>
<p><code>image: &lt;LOCAL DOCKER REPO URL&gt;/busybox</code>.</p>
<p><strong>3 .</strong> If there was no issue with Docker login and if you are able to download docker images with docker pull but getting error when creating a pod with the image then create a private docker registry.</p>
<ul>
<li>Create and run a private docker registry</li>
<li>Download busybox image from public docker hub</li>
<li>Create a tag for busybox before pushing it to private registry</li>
<li>Push to registry</li>
<li>Now create a pod, it will be created successfully.</li>
</ul>
<p>Refer to the <a href="https://stackoverflow.com/a/70093649/15745153">stackpost</a> for more information.</p>
