📚 Docker pour les débutants : Le Chantier Naval

9.1 : Debugging : logs -f, inspect, et le fameux docker exec -it

📄 Article ⏱ 5 ✅ Gratuit

À ce stade, vous avez déployé vos conteneurs et ils fonctionnent (ou presque). Mais comment savoir ce qui se passe à l’intérieur ? Docker fournit plusieurs outils pour observer et diagnostiquer vos conteneurs.

1. Visualiser les logs avec docker logs

Chaque conteneur garde un journal des événements et sorties de ses processus.

  • Commande de base :
docker logs nom_du_conteneur
  • Pour suivre les logs en temps réel (comme tail -f) :
docker logs -f nom_du_conteneur

Exemple concret :
Si votre conteneur Apache s’appelle mon-apache, vous pouvez voir les erreurs et requêtes en direct :

docker logs -f mon-apache

2. Inspecter un conteneur avec docker inspect

Parfois, vous avez besoin d’informations techniques et détaillées sur un conteneur : IP, volumes, variables d’environnement…

docker inspect nom_du_conteneur
  • Astuce débutant : vous pouvez combiner avec grep pour filtrer ce qui vous intéresse :
docker inspect mon-apache | grep IPAddress

3. Interagir directement avec le conteneur : docker exec -it

C’est probablement l’outil le plus pratique pour entrer dans un conteneur comme dans une machine virtuelle.

  • Syntaxe :
docker exec -it nom_du_conteneur bash
  • Si le conteneur n’a pas bash (comme certains conteneurs légers), utilisez sh :
docker exec -it nom_du_conteneur sh

Exemple pratique :
Vous voulez vérifier la configuration Apache ou accéder aux fichiers de votre site :

docker exec -it mon-apache bash
cd /var/www/html
ls -l

Puis exit pour sortir.

4. Récap’ rapide pour les débutants

  • docker logs -f → voir les logs en temps réel.
  • docker inspect → comprendre la configuration interne.
  • docker exec -it → entrer dans le conteneur pour explorer ou dépanner.

Note : avec ces trois commandes, vous pourrez quasiment tout diagnostiquer sans avoir besoin de supprimer ou redéployer vos conteneurs.