Comment utiliser la commande docker container ls pour lister les conteneurs

DockerDockerBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce lab, vous apprendrez à utiliser efficacement la commande docker container ls (également connue sous le nom de docker ps) pour lister et gérer vos conteneurs Docker. Vous commencerez par lister uniquement les conteneurs actuellement en cours d'exécution, puis élargirez votre vue pour inclure tous les conteneurs, y compris ceux qui sont arrêtés.

De plus, vous explorerez comment filtrer la liste des conteneurs en fonction de divers critères tels que le statut et le nom, vous permettant de trouver rapidement des conteneurs spécifiques. Enfin, vous apprendrez à afficher des informations supplémentaires comme la taille des conteneurs et à formater la sortie selon vos besoins, offrant ainsi une compréhension complète de votre environnement de conteneurs.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker/ContainerOperationsGroup -.-> docker/run("Run a Container") docker/ContainerOperationsGroup -.-> docker/ps("List Running Containers") docker/ContainerOperationsGroup -.-> docker/stop("Stop Container") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") subgraph Lab Skills docker/run -.-> lab-555114{{"Comment utiliser la commande docker container ls pour lister les conteneurs"}} docker/ps -.-> lab-555114{{"Comment utiliser la commande docker container ls pour lister les conteneurs"}} docker/stop -.-> lab-555114{{"Comment utiliser la commande docker container ls pour lister les conteneurs"}} docker/pull -.-> lab-555114{{"Comment utiliser la commande docker container ls pour lister les conteneurs"}} end

Lister les conteneurs en cours d'exécution

Dans cette étape, vous apprendrez à lister les conteneurs Docker en cours d'exécution. La commande docker ps est utilisée pour afficher des informations sur les conteneurs actifs.

Commençons par exécuter un simple conteneur qui restera actif. Nous utiliserons l'image ubuntu et lancerons une commande qui maintient le conteneur en fonctionnement.

docker pull ubuntu
docker run -d ubuntu sleep infinity

La commande docker pull ubuntu télécharge l'image ubuntu depuis Docker Hub. La commande docker run -d ubuntu sleep infinity exécute un nouveau conteneur basé sur l'image ubuntu.

  • -d exécute le conteneur en mode détaché (en arrière-plan)
  • ubuntu est le nom de l'image
  • sleep infinity est la commande exécutée à l'intérieur du conteneur, qui le maintient actif indéfiniment

Maintenant, listons les conteneurs en cours d'exécution avec la commande docker ps.

docker ps

Cette commande affichera la liste de tous les conteneurs actuellement en cours d'exécution. Vous devriez voir le conteneur ubuntu que nous venons de démarrer. Le résultat inclut des informations comme l'ID du conteneur, l'image utilisée, la commande exécutée, la date de création, le statut, les ports et les noms.

Afficher tous les conteneurs y compris ceux arrêtés

Dans l'étape précédente, vous avez appris à lister les conteneurs en cours d'exécution avec docker ps. Cependant, docker ps n'affiche que les conteneurs actuellement actifs. Pour voir tous les conteneurs, y compris ceux qui sont arrêtés, vous devez utiliser l'option -a.

Commençons par arrêter le conteneur ubuntu que nous avons démarré précédemment. Vous aurez besoin de l'ID ou du nom du conteneur, que vous pouvez obtenir via la sortie de docker ps.

docker stop $(docker ps -q --filter ancestor=ubuntu)

La commande docker stop permet d'arrêter un conteneur en cours d'exécution.

  • $(docker ps -q --filter ancestor=ubuntu) est une substitution de commande qui récupère l'ID du conteneur en cours d'exécution basé sur l'image ubuntu. L'option -q ne retourne que l'ID du conteneur, et --filter ancestor=ubuntu filtre par nom d'image.

Maintenant, listons tous les conteneurs, y compris celui qui est arrêté, avec docker ps -a.

docker ps -a

Cette commande affichera la liste de tous les conteneurs créés, quel que soit leur état actuel (en cours d'exécution, arrêté, terminé, etc.). Vous devriez voir le conteneur ubuntu dans la liste, avec un statut "Exited" (Arrêté).

Filtrer les conteneurs par statut et nom

Dans cette étape, vous apprendrez à filtrer la liste des conteneurs selon leur statut et leur nom en utilisant l'option --filter avec la commande docker ps. Cette fonctionnalité est particulièrement utile lorsque vous avez de nombreux conteneurs et souhaitez en trouver des spécifiques.

Commençons par démarrer un nouveau conteneur, mais cette fois en lui attribuant un nom spécifique.

docker run -d --name my-nginx nginx

La commande docker run -d --name my-nginx nginx exécute un nouveau conteneur basé sur l'image nginx en mode détaché et lui assigne le nom my-nginx.

  • docker pull nginx n'est pas explicitement nécessaire ici car docker run téléchargera automatiquement l'image si elle n'est pas disponible localement.

Maintenant, listons uniquement les conteneurs en cours d'exécution en utilisant un filtre sur le statut.

docker ps --filter status=running

Cette commande affichera uniquement les conteneurs actuellement dans l'état "running" (en cours d'exécution). Vous devriez voir le conteneur my-nginx dans la liste.

Ensuite, filtrons les conteneurs par nom.

docker ps -a --filter name=my-nginx

Cette commande listera tous les conteneurs (y compris ceux arrêtés grâce à -a) portant le nom my-nginx. Vous devriez voir le conteneur my-nginx listé avec son statut.

Vous pouvez également combiner les filtres. Par exemple, pour lister les conteneurs en cours d'exécution avec un nom spécifique :

docker ps --filter status=running --filter name=my-nginx

Cette commande affichera le conteneur my-nginx uniquement s'il est actuellement en cours d'exécution.

Afficher la taille des conteneurs et formater la sortie

Dans cette étape, vous apprendrez à afficher la taille des conteneurs et à formater la sortie de la commande docker ps. Connaître la taille de vos conteneurs peut être utile pour gérer l'espace disque.

Par défaut, docker ps n'affiche pas la taille des conteneurs. Pour inclure ces informations, vous pouvez utiliser l'option --size.

docker ps -a --size

Cette commande listera tous les conteneurs (actifs et arrêtés) et inclura deux colonnes relatives à la taille : SIZE (taille de la couche accessible en écriture du conteneur) et VIRTUAL SIZE (taille totale du conteneur, incluant les couches de l'image).

Parfois, le format de sortie par défaut de docker ps ne correspond pas exactement à vos besoins. Vous pouvez formater la sortie en utilisant l'option --format. Cette option prend une chaîne de template Go.

Par exemple, pour afficher uniquement l'ID du conteneur, le nom de l'image et le statut, vous pouvez utiliser la commande suivante :

docker ps -a --format "{{.ID}}\t{{.Image}}\t{{.Status}}"

Dans cette chaîne de formatage :

  • {{.ID}} fait référence à l'ID du conteneur
  • {{.Image}} fait référence au nom de l'image
  • {{.Status}} fait référence au statut du conteneur
  • \t est utilisé comme caractère de tabulation pour séparer les colonnes

Vous pouvez également inclure les informations de taille dans la sortie formatée.

docker ps -a --format "{{.ID}}\t{{.Image}}\t{{.Status}}\t{{.Size}}"

Cette commande affichera l'ID du conteneur, l'image, le statut et la taille. Le champ {{.Size}} inclut à la fois la taille de la couche accessible en écriture et la taille virtuelle.

Expérimentez avec différents champs dans la chaîne de formatage pour personnaliser la sortie selon vos besoins. D'autres champs utiles incluent {{.Names}}, {{.CreatedAt}} et {{.Ports}}.

Résumé

Dans ce lab, vous avez appris à utiliser la commande docker ps pour lister les conteneurs Docker. Vous avez commencé par lister uniquement les conteneurs en cours d'exécution avec docker ps, après avoir lancé un simple conteneur ubuntu en mode détaché. Vous avez ensuite appris à afficher tous les conteneurs, y compris ceux arrêtés, en ajoutant l'option -a à la commande docker ps, après avoir stoppé le conteneur précédemment créé.