Comment utiliser la commande docker container top pour visualiser les processus d'un conteneur

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 labo (lab), vous apprendrez à utiliser la commande docker container top pour inspecter les processus en cours d'exécution à l'intérieur d'un conteneur Docker. Vous commencerez par démarrer un conteneur simple pour disposer d'un environnement d'exécution.

Ensuite, vous utiliserez la commande docker container top pour visualiser les processus actifs dans le conteneur. Enfin, vous explorerez comment utiliser docker container top avec diverses options ps pour personnaliser la sortie et obtenir des informations plus détaillées sur les processus du conteneur.


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/top("Display Running Processes in Container") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") subgraph Lab Skills docker/run -.-> lab-555125{{"Comment utiliser la commande docker container top pour visualiser les processus d'un conteneur"}} docker/ps -.-> lab-555125{{"Comment utiliser la commande docker container top pour visualiser les processus d'un conteneur"}} docker/top -.-> lab-555125{{"Comment utiliser la commande docker container top pour visualiser les processus d'un conteneur"}} docker/pull -.-> lab-555125{{"Comment utiliser la commande docker container top pour visualiser les processus d'un conteneur"}} end

Démarrer un conteneur simple

Dans cette étape, vous apprendrez comment démarrer un conteneur Docker simple. Les conteneurs Docker sont des unités légères, portables et autonomes qui contiennent tout le nécessaire pour exécuter une application.

Commencez par télécharger l'image hello-world depuis Docker Hub. Il s'agit d'une image très légère souvent utilisée pour tester le bon fonctionnement de Docker.

docker pull hello-world

Vous devriez voir une sortie indiquant que l'image est en cours de téléchargement et d'extraction.

Maintenant, exécutons un conteneur basé sur l'image hello-world.

docker run hello-world

Lorsque vous exécutez cette commande, Docker crée un nouveau conteneur à partir de l'image hello-world et exécute la commande définie dans l'image. L'image hello-world est conçue pour simplement afficher un message dans la console puis se terminer.

Vous devriez voir une sortie similaire à ceci :

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To discover more examples and ideas, visit:
 https://docs.docker.com/get-started/

Cette sortie confirme que Docker est correctement installé et fonctionne sur votre VM LabEx. La commande docker run a créé et démarré un conteneur, qui a ensuite exécuté sa tâche avant de se terminer.

Utiliser docker container top pour visualiser les processus en cours d'exécution

Dans cette étape, vous apprendrez à utiliser la commande docker container top pour visualiser les processus en cours d'exécution à l'intérieur d'un conteneur Docker. Cette commande est similaire à la commande top sur un système Linux, mais elle affiche spécifiquement les processus s'exécutant dans un conteneur.

Tout d'abord, nous avons besoin d'un conteneur en cours d'exécution. Démarrons un simple conteneur ubuntu et maintenons-le actif en arrière-plan. Nous utiliserons l'option -d pour exécuter le conteneur en mode détaché et la commande sleep infinity pour maintenir le conteneur actif.

docker run -d ubuntu sleep infinity

Vous verrez une longue chaîne de caractères s'afficher dans la console. Il s'agit de l'ID du conteneur.

Maintenant, utilisons docker container top suivi de l'ID ou du nom du conteneur pour voir les processus en cours d'exécution. Vous pouvez obtenir l'ID du conteneur en exécutant docker ps.

docker ps

Copiez le CONTAINER ID dans la sortie. Puis, remplacez <container_id> par l'ID réel dans la commande suivante :

docker container top <container_id>

Vous devriez voir une sortie similaire à ceci, montrant le processus sleep infinity en cours d'exécution dans le conteneur :

UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
root                7345                7331                0                   14:55               ?                   00:00:00            sleep infinity

La sortie affiche des informations sur les processus en cours d'exécution dans le conteneur spécifié, notamment :

  • User ID (UID)
  • Process ID (PID)
  • Parent Process ID (PPID)
  • Utilisation CPU (C)
  • Heure de démarrage (STIME)
  • Terminal de contrôle (TTY)
  • Temps CPU cumulé (TIME)
  • Commande exécutée (CMD)

Dans ce cas, le processus principal est sleep infinity.

Utiliser docker container top avec des options ps

Dans cette étape, vous apprendrez à utiliser la commande docker container top avec des options ps pour personnaliser l'affichage et visualiser des informations spécifiques sur les processus dans un conteneur. La commande docker container top accepte les options standard de ps, vous permettant de contrôler quelles colonnes sont affichées et dans quel format.

Tout d'abord, assurez-vous d'avoir un conteneur en cours d'exécution depuis l'étape précédente. Vous pouvez le vérifier en exécutant docker ps.

docker ps

Copiez le CONTAINER ID du conteneur ubuntu en cours d'exécution.

Maintenant, utilisons docker container top avec quelques options ps. Par exemple, pour afficher uniquement l'ID du processus (pid) et la commande (cmd), vous pouvez utiliser l'option -o suivie des colonnes souhaitées. Remplacez <container_id> par l'ID de votre conteneur.

docker container top pid,cmd < container_id > -o

Vous devriez voir une sortie similaire à ceci, montrant uniquement les colonnes PID et CMD :

PID                 CMD
7345                sleep infinity

Vous pouvez utiliser différentes options ps pour obtenir diverses informations. Par exemple, pour voir l'utilisation du CPU (%cpu) et de la mémoire (%mem), vous pouvez utiliser :

docker container top pid,%cpu,%mem,cmd < container_id > -o

La sortie inclura l'utilisation du CPU et de la mémoire pour les processus dans le conteneur :

PID                 %CPU                %MEM                CMD
7345                0.0                 0.0                 sleep infinity

Vous pouvez consulter la documentation de la commande ps pour une liste complète des options disponibles. L'utilisation de docker container top avec des options ps offre une méthode flexible pour surveiller les processus en cours d'exécution dans vos conteneurs et résoudre des problèmes.

Résumé

Dans ce lab, vous avez appris les étapes fondamentales pour interagir avec des conteneurs Docker. Vous avez commencé par télécharger et exécuter l'image simple hello-world, ce qui a servi de test de base pour votre installation Docker et a démontré les commandes principales docker pull et docker run. Cette première étape a illustré comment Docker récupère des images et crée des conteneurs pour exécuter des tâches prédéfinies.

Ensuite, vous avez été initié à la commande docker container top. Bien que le contenu complet n'ait pas été fourni, le titre de l'étape indique que vous apprendriez à utiliser cette commande pour inspecter les processus en cours d'exécution dans un conteneur, de manière similaire à la commande top dans un environnement Linux standard. La dernière étape, "Utiliser docker container top avec des options ps", suggère une exploration plus poussée des capacités de docker container top, démontrant probablement comment personnaliser l'affichage en utilisant des options similaires à celles de la commande ps.