Fix ImagePullBackOff and ErrImagePull in Kubernetes
Why ImagePullBackOff happens and how to fix it — registry auth, wrong tags, and private images.
Problem
A pod stays in `ImagePullBackOff` or `ErrImagePull`. The container image cannot be pulled from the registry.
Root cause
- Image tag does not exist (typo or moved tag).
- Private registry without an `imagePullSecret`.
- Expired registry credentials.
- Node cannot reach the registry (DNS, firewall, airgap).
Solution
Confirm the exact error
kubectl describe pod <pod> | grep -A2 'Failed'Create a pull secret
kubectl create secret docker-registry regcred \
--docker-server=registry.example.com \
--docker-username=USER \
--docker-password=TOKENReference it in the Deployment
spec:
imagePullSecrets:
- name: regcred
containers:
- name: api
image: registry.example.com/api:1.4.2Frequently asked questions
Related fixes
Kubernetes
7 minHow to Fix CrashLoopBackOff in Kubernetes
A practical, step-by-step guide to diagnosing and fixing CrashLoopBackOff errors in Kubernetes pods.
#pods#debugging#kubectl
Kubernetes
6 minPod Stuck in Pending or Unschedulable in Kubernetes
Diagnose why your pod won't schedule — node resources, taints, affinity, and missing PVCs.
#scheduling#nodes#pvc
Weekly digest
One DevOps fix in your inbox each week
Short, practical, no fluff. Real errors, real fixes — straight from production postmortems.