CodeGym /Cours /Docker SELF /Vérification de l'état des conteneurs

Vérification de l'état des conteneurs

Docker SELF
Niveau 11 , Leçon 2
Disponible

3.1 Bases de la commande docker ps

La commande docker ps est l'une des plus utiles dans l'arsenal Docker. Elle affiche une liste des conteneurs en cours d'exécution et fournit des informations à leur sujet. Dans cette conférence, on va explorer en détail comment utiliser docker ps pour vérifier l'état de vos conteneurs et quels paramètres sont disponibles pour un affichage plus détaillé.

Par défaut, la commande docker ps affiche uniquement la liste des conteneurs qui sont actuellement en cours d'exécution.

Syntaxe

Terminal

docker ps [OPTIONS]

Où :

  • OPTIONS : paramètres supplémentaires pour filtrer et formater la sortie.

Exemple d'utilisation de base

Terminal


docker ps 

Cette commande de base docker ps affichera une liste de tous les conteneurs en cours d'exécution. La sortie inclura les champs suivants :

  • CONTAINER ID : identifiant unique du conteneur.
  • IMAGE : image à partir de laquelle le conteneur a été créé.
  • COMMAND : commande exécutée dans le conteneur.
  • CREATED : durée depuis la création du conteneur.
  • STATUS : état actuel du conteneur (par exemple, Up 5 minutes).
  • PORTS : ports redirigés.
  • NAMES : nom du conteneur.

Liste de tous les conteneurs

Pour afficher tous les conteneurs, y compris ceux qui sont arrêtés, utilisez l'option -a :

Terminal


docker ps -a 

Cette commande affichera une liste de tous les conteneurs qui ont été lancés à un moment donné, avec leur état actuel (en cours d'exécution, arrêté, etc.).

3.2 Filtrage de la sortie

Docker permet de filtrer la sortie de la commande docker ps pour afficher uniquement les conteneurs qui correspondent à des critères définis.

1. Filtrage par statut

Par exemple, pour afficher uniquement les conteneurs arrêtés :

Terminal


docker ps -f "status=exited" 

2. Filtrage par nom

Pour afficher les conteneurs avec un certain nom ou une partie de celui-ci :

Terminal


docker ps -f "name=my_container"

3. Filtrage par image

Pour afficher les conteneurs créés à partir d'une image spécifique :

Terminal

docker ps -f "ancestor=nginx"

3.3 Mise en forme de la sortie

Tu peux personnaliser la sortie de la commande docker ps pour la rendre plus lisible ou inclure uniquement les colonnes dont tu as besoin. Pour cela, utilise le paramètre --format.

Exemple de formatage

Terminal


docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"

Cet exemple affiche un tableau avec l'identifiant du conteneur, son nom et son état.

Colonnes disponibles pour le tableau

  • {{.ID}}: identifiant du conteneur.
  • {{.Image}}: image du conteneur.
  • {{.Command}}: commande exécutée dans le conteneur.
  • {{.CreatedAt}}: date de création du conteneur.
  • {{.RunningFor}}: durée du fonctionnement du conteneur.
  • {{.Status}}: état actuel du conteneur.
  • {{.Ports}}: ports redirigés.
  • {{.Names}}: nom du conteneur.

Exemples d'utilisation

Exemple 1 : afficher uniquement les identifiants des conteneurs

Cet exemple affiche uniquement les identifiants des conteneurs en cours d'exécution. Utile pour les scripts.

Terminal


docker ps -q

Exemple 2 : afficher les conteneurs démarrés dans les dernières 24 heures

Terminal


docker ps --filter "since=24h" 

Exemple 3 : afficher les conteneurs avec un état particulier et mise en forme de la sortie

Cet exemple affiche un tableau avec les noms des conteneurs, leur état et les ports redirigés pour tous les conteneurs en cours d'exécution.

Terminal


docker ps -f "status=running" --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}" 

3.4 Scénarios pratiques

1. Surveillance des conteneurs en cours d'exécution

Quand tu as plusieurs conteneurs en cours d'exécution, la commande docker ps te permet de vérifier rapidement leur état actuel et de t'assurer que tout fonctionne correctement.

Terminal


docker ps 

2. Recherche et suppression des conteneurs arrêtés

Une fois que les conteneurs ont terminé leur travail, ils restent dans le système jusqu'à ce que tu les supprimes. Tu peux utiliser docker ps -a pour rechercher tous les conteneurs arrêtés, puis les supprimer.

Terminal

docker ps -a -f "status=exited" 
docker rm $(docker ps -a -f "status=exited" -q)
    

3. Automatisation des tâches

L'utilisation de la commande docker ps dans des scripts te permet d'automatiser diverses tâches d'administration des conteneurs. Par exemple, tu peux générer des rapports sur l'état des conteneurs ou redémarrer automatiquement les conteneurs s'ils sont arrêtés.

Terminal

if [ $(docker ps -q -f "name=my_container") ]; then
  echo "Le conteneur est en cours d'exécution"
else
  docker start my_container
fi
    

Important ! Ce “code” est écrit dans le terminal Linux. Tu devras peut-être l'apprendre.

Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION