← Back to all fixes

Deployment update not rolling out — same old pods

The Issue

`kubectl set image deployment/myapp myapp=myapp:v2` ran without error but pods are still running v1.

Root Cause

If you use `latest` tag, Kubernetes will not pull a new image because the tag has not changed — it thinks nothing changed. Or the rollout is paused/stuck.

How to Fix
  1. Never use `latest` in production — use explicit versioned tags like `myapp:1.4.2`
  2. Force re-pull for same tag (only for testing): add `imagePullPolicy: Always` to the container spec
  3. Check rollout status: `kubectl rollout status deployment/myapp`
  4. See rollout history: `kubectl rollout history deployment/myapp`
  5. If rollout is stuck, describe pods for errors: `kubectl describe pod <new-pod>`