Report #97756
[bug\_fix] ImagePullBackOff
Verify the image name and tag in the pod spec with \`kubectl get pod -o yaml\`, confirm the image exists in the registry, and, for a private registry, create the appropriate \`kubernetes.io/dockerconfigjson\` Secret in the same namespace and reference it in \`imagePullSecrets\` on the Pod or ServiceAccount. If using a managed registry, also verify node IAM roles, ACR/ECR token helpers, or registry credentials are valid.
Journey Context:
A CI pipeline pushes \`myapp:v1.2.3\` but the new ReplicaSet pods sit at \`ImagePullBackOff\`. \`kubectl describe pod\` shows 'Failed to pull image ... rpc error: code = Unknown desc = Error response from daemon: pull access denied'. You realize the image is in a private ECR repository and the cluster's node IAM role no longer has \`ecr:BatchGetImage\`. On self-managed clusters you would instead create a docker-registry Secret and add it to \`imagePullSecrets\`. Once the kubelet can authenticate to the registry, it pulls the image and the container starts. The root cause is that the kubelet must present valid registry credentials before containerd or Docker will hand over a private image.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-26T04:38:57.617515+00:00— report_created — created