
Lister les conteneurs (docker ps, docker container ls)
Apprenez à utiliser les commandes docker ps et docker container ls pour lister et gérer vos conteneurs Docker. Découvrez leurs options et cas d'utilisation.
Introduction à la liste des conteneurs Docker
Dans Docker, la gestion des conteneurs commence par leur identification. Que ce soit pour surveiller les conteneurs en cours d'exécution, inspecter leur état ou interagir avec eux, il est essentiel de savoir comment les lister. Docker propose deux commandes principales pour cette tâche : `docker ps` et `docker container ls`. Ces commandes permettent de visualiser les conteneurs actifs, ainsi que ceux qui ont été arrêtés ou créés récemment.
Par défaut, ces commandes affichent uniquement les conteneurs en cours d'exécution. Cependant, grâce à une variété d'options, vous pouvez personnaliser leur sortie pour inclure des conteneurs arrêtés, filtrer les résultats ou afficher des informations détaillées. Ces fonctionnalités sont particulièrement utiles dans des environnements complexes où plusieurs conteneurs sont déployés simultanément.
Dans cette section, nous explorerons en détail les commandes `docker ps` et `docker container ls`, leurs options, et les cas d'utilisation courants. Vous apprendrez également à interpréter les informations affichées et à utiliser ces commandes pour optimiser la gestion de vos conteneurs Docker.
Utilisation de la commande docker ps
### Commande de baseLa commande `docker ps` est utilisée pour lister les conteneurs en cours d'exécution. Par défaut, elle affiche une liste des conteneurs actifs avec des informations telles que l'ID du conteneur, l'image utilisée, la commande exécutée, le temps écoulé depuis le démarrage, l'état actuel, les ports exposés et le nom du conteneur. Par exemple :```bashdocker ps```Cette commande renvoie une sortie similaire à :```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESabc123 nginx:latest "nginx -g 'daemon of…" 2 hours ago Up 2 hours 0.0.0.0:8080->80/tcp web_server```
### Afficher tous les conteneurs avec -aPar défaut, `docker ps` n'affiche que les conteneurs en cours d'exécution. Pour inclure les conteneurs arrêtés ou créés, utilisez l'option `-a` :```bashdocker ps -a```Cela permet de visualiser l'historique complet des conteneurs, y compris ceux qui ne sont plus actifs.
### Filtrer les résultats avec --filterPour afficher uniquement les conteneurs correspondant à certains critères, utilisez l'option `--filter`. Par exemple, pour afficher les conteneurs basés sur l'image `nginx` :```bashdocker ps --filter "ancestor=nginx"```Vous pouvez également filtrer par état (`running`, `exited`, etc.) :```bashdocker ps --filter "status=exited"```
### Personnaliser l'affichage avec --formatL'option `--format` permet de personnaliser la sortie de la commande en utilisant des modèles Go. Par exemple, pour afficher uniquement les noms et les images des conteneurs :```bashdocker ps --format "{{.Names}}: {{.Image}}"```
Utilisation de la commande docker container ls
### Commande équivalente à docker psLa commande `docker container ls` est une alternative moderne à `docker ps`. Elle offre les mêmes fonctionnalités et options, mais s'inscrit dans une nomenclature plus cohérente avec les autres commandes Docker, comme `docker container start` ou `docker container stop`.
### Commande de basePour lister les conteneurs en cours d'exécution, utilisez :```bashdocker container ls```Cette commande produit une sortie identique à `docker ps`.
### Afficher tous les conteneursPour inclure les conteneurs arrêtés ou créés, utilisez l'option `-a` :```bashdocker container ls -a```
### Filtrer et formater les résultatsLes options `--filter` et `--format` fonctionnent également avec `docker container ls`, offrant une flexibilité similaire pour personnaliser la sortie.
Exemples pratiques
### Exemple 1 : Lister les conteneurs arrêtésPour afficher uniquement les conteneurs qui ont été arrêtés :```bashdocker ps -a --filter "status=exited"```
### Exemple 2 : Trouver un conteneur par nomPour rechercher un conteneur spécifique par son nom :```bashdocker ps --filter "name=web_server"```
### Exemple 3 : Afficher les conteneurs avec des ports exposésPour afficher uniquement les conteneurs qui exposent des ports :```bashdocker ps --filter "publish=80"```
### Exemple 4 : Personnaliser l'affichagePour afficher uniquement les ID et les noms des conteneurs :```bashdocker ps --format "{{.ID}}: {{.Names}}"```
Meilleures pratiques pour lister les conteneurs
### Utilisez des noms descriptifs pour vos conteneursAttribuez des noms explicites à vos conteneurs lors de leur création avec l'option `--name`. Cela facilite leur identification dans les listes générées par `docker ps` ou `docker container ls`.
### Nettoyez régulièrement les conteneurs inutilisésPour éviter l'encombrement, supprimez les conteneurs arrêtés ou inutilisés avec la commande `docker rm`. Vous pouvez également utiliser `docker system prune` pour nettoyer automatiquement les conteneurs, images et volumes inutilisés.
### Combinez les options pour des recherches précisesUtilisez les options `--filter` et `--format` pour affiner vos recherches et afficher uniquement les informations pertinentes. Par exemple, pour afficher les conteneurs exécutant une image spécifique avec un format personnalisé :```bashdocker ps --filter "ancestor=nginx" --format "{{.Names}}: {{.Status}}"```