title: How to resolve pods failing due to exceeding pull rate limit from docker?
body: <p><strong>kubectl get all -n migration:</strong></p>
  <pre><code>NAME                          READY   STATUS             RESTARTS   AGE
  pod/nginx2-7b8667968c-zxtq7   0/1     ImagePullBackOff   0          5m38s
  
  NAME                     READY   UP-TO-DATE   AVAILABLE   AGE
  deployment.apps/nginx2   0/1     1            0           5m38s
  
  NAME                                DESIRED   CURRENT   READY   AGE
  replicaset.apps/nginx2-7b8667968c   1         1         0       5m38s
  
  </code></pre>
  <p><strong>kubectl describe pod nginx2-7b8667968c-zxtq7 -n migration:</strong></p>
  <pre><code>Events:
    Type     Reason          Age                From               Message
    ----     ------          ----               ----               -------
    Normal   Scheduled       44s                default-scheduler  Successfully assigned migration/nginx2-7b8667968c-zxtq7 to k8s-master01
    Normal   SandboxChanged  33s                kubelet            Pod sandbox changed, it will be killed and re-created.
    Normal   Pulling         18s (x2 over 43s)  kubelet            Pulling image &quot;nginx&quot;
    Warning  Failed          14s (x2 over 34s)  kubelet            Failed to pull image &quot;nginx&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: https://www.docker.com/increase-rate-limit
    Warning  Failed          14s (x2 over 34s)  kubelet            Error: ErrImagePull
    Normal   BackOff         3s (x4 over 32s)   kubelet            Back-off pulling image &quot;nginx&quot;
    Warning  Failed          3s (x4 over 32s)   kubelet            Error: ImagePullBackOff
  </code></pre>
  <p><strong>Post-logging in with different docker account:</strong></p>
  <p>I can manually pull an image from docker using <code>docker pull nginx</code></p>
  <p>But while deploying a deployment, it again shows the same error.</p>
  <p><strong>Deployment yaml is as:</strong></p>
  <pre><code>apiVersion: apps/v1
  kind: Deployment
  metadata:
    name: nginx2
    namespace: migration
  spec:
    replicas: 1
    selector:
        matchLabels:
          name: nginx2
    template:
      metadata:
        labels:
          name: nginx2
      spec:
        containers:
        - name: nginx2
          imagePullPolicy: Always
          image: nginx
          ports:
          - containerPort: 3000
          volumeMounts:
            - name: game-demo
              mountPath: /usr/src/app/config
            - name: secret-basic-auth
              mountPath: /usr/src/app/secret
            - name: site-data2
              mountPath: /var/www/html
        volumes:
        - name: game-demo
          configMap:
            name: game-demo
        - name: secret-basic-auth
          secret:
            secretName: secret-basic-auth
        - name: site-data2
          persistentVolumeClaim:
            claimName: demo-pvc-claim2
  </code></pre>
  <p>Also, as the nginx image is present locally, I tried with modifying <code>imagePullPolicy</code> to <code>Never</code> as well as 'IfNotPresent'.</p>
  <p>But nothing works. Please guide.</p>