Docker / Engine, Containers & Runtime Diagnosis
Distinguish Docker health status from container process state
A container can be running but unhealthy because its health command fails. Docker health reporting alone is not automatic application repair.
Environment and inputs: Docker Engine · Compose v2 and Buildx where specified; Linux containers unless noted. Verify daemon context, installed feature support and authorized host or Swarm manager access first.
Start with this check
Confirm the environment and replace sample objects, namespaces, images, paths and hosts with approved targets. Share only relevant, sanitized output. Follow the workload owner’s process for changes.
docker container inspect --format '{{json .State.Health}}' app
Read the result
When a healthcheck exists, this shows retained health attempts and status. Health command output can contain sensitive information and history is bounded.
Resolve and verify
Compare the health command's path, timeout and dependency contract with real application readiness. Correct the check or underlying service and verify meaningful health transitions.
Before changing production
Do not replace the check with unconditional success or assume standalone Engine restarts every unhealthy container.