La première erreur de l’application est souvent masquée par une politique de restart agressive.
Étapes à suivre
-
1
Lister les conteneurs
Regardez état et Exit Code.
-
2
Lire les logs
Commencez avant les répétitions.
-
3
Inspecter configuration
Volumes, variables et healthcheck.
-
4
Tester sans boucle
Désactivez temporairement restart si nécessaire.
Commandes utiles
docker ps -a
docker logs --tail 200 CONTAINER
docker inspect CONTAINER
À retenir
- Préservez les volumes.
- Ne supprimez pas un conteneur avant d’avoir identifié les données persistantes.
Docker : distinguer boucle de redémarrage et consommation du storage driver
Repères techniques
- docker ps --no-trunc et docker inspect montrent exit code, restart policy, mounts et configuration ; les logs de l’instance précédente restent essentiels.
- overlay2 peut grossir à cause des couches écrites, logs json-file et images inutilisées ; volumes nommés sont une autre catégorie de données.
- Restart=always peut transformer une erreur immédiate en boucle sans corriger la cause.
État Docker
Lire taille, logs et mounts avant tout prune.
docker ps -a --no-trunc
docker inspect <container>
docker system df -vPièges spécifiques
- docker system prune -a peut supprimer des images nécessaires au prochain redéploiement.
- Supprimer un volume pour gagner de la place peut supprimer les données persistantes de l’application.
Comment valider
- Le conteneur reste up sur plusieurs cycles et son exit code/log ne reproduit plus l’erreur.
- La croissance disque est attribuée à une couche/log/volume précise et une rétention est définie.
Preuves et vérifications
docker ps --no-trunc et docker inspect montrent exit code, restart policy, mounts et configuration ; les logs de l’instance précédente restent essentiels. overlay2 peut grossir à cause des couches écrites, logs json-file et images inutilisées ; volumes nommés sont une autre catégorie de données.
Contrôle de résultat
Le conteneur reste up sur plusieurs cycles et son exit code/log ne reproduit plus l’erreur. La croissance disque est attribuée à une couche/log/volume précise et une rétention est définie.
Point d’attention
docker system prune -a peut supprimer des images nécessaires au prochain redéploiement. Restart=always peut transformer une erreur immédiate en boucle sans corriger la cause.
Concepts liés
Référence primaire : Docker Docs — Restart policies.