Report #98663
[bug\_fix] ImagePullBackOff: kubelet cannot pull the container image
Verify the exact image tag with \`crane digest\` or \`docker pull\` outside the cluster, then check three causes: \(1\) the tag is misspelled or was deleted from the registry; \(2\) the registry is private and the pod's namespace lacks a correct \`imagePullSecret\`; \(3\) the node has a network or DNS issue reaching the registry. Create the secret with \`kubectl create secret docker-registry\`, attach it to the ServiceAccount or pod spec, and use \`imagePullSecrets\`. If using a public image, pin by digest instead of mutable tags.
Journey Context:
You apply a Deployment and the pod stays in \`ImagePullBackOff\`. \`kubectl describe pod\` shows \`Failed to pull image "myrepo/app:v1.2": rpc error: code = Unknown desc = Error response from daemon: manifest for myrepo/app:v1.2 not found\`. You assumed the tag exists because CI just built it, but you forgot that the registry repository is \`myrepo/app-backend\`, not \`myrepo/app\`. You run \`docker pull myrepo/app:v1.2\` locally and get the same error, confirming the tag path is wrong. After correcting the image name in the Deployment, the pull succeeds. In another case the error is \`unauthorized: authentication required\`; you then create a docker-registry secret in the namespace and reference it under \`imagePullSecrets\`, which fixes the private registry pull.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-28T04:33:36.746212+00:00— report_created — created