Supprimer un container Docker pour libérer des ressources
Les conteneurs Docker consomment de l’espace et des ressources sur votre système hôte. En supprimant les conteneurs inutiles, vous pouvez libérer un espace de stockage précieux et améliorer les performances de votre système.
Quand faut-il supprimer un conteneur Docker ?
Les conteneurs Docker sont des unités exécutables isolées qui contiennent des applications et leurs dépendances. La suppression des conteneurs Docker peut être effectuée dans différents cas de figure afin de garantir l’efficacité, la sécurité et la clarté de votre environnement Docker.
De manière générale, vous devriez supprimer les conteneurs après leur utilisation. Lorsqu’un conteneur a terminé avec succès sa tâche ou son processus spécifique, il est conseillé de ne pas le garder plus longtemps dans votre environnement. Cela évite que les conteneurs inactifs continuent à mobiliser des ressources et à occuper inutilement de l’espace.
Il est également conseillé de supprimer les conteneurs qui ne sont plus utilisés ou qui n’ont pas reçu de mises à jour depuis un certain temps. Ceci est particulièrement important pour réduire les risques de sécurité, car les anciens conteneurs peuvent présenter des versions logicielles obsolètes ou des failles de sécurité.
Si vous avez des doutes sur la sécurité d’un conteneur ou si vous pensez qu’il pourrait être compromis, supprimez-le immédiatement afin de minimiser les risques. Il en va de même pour les conteneurs qui ne peuvent pas être démarrés en raison de conflits ou d’autres problèmes.
- vCPU aux coûts avantageux et cœurs dédiés performants
- Sans engagement pour plus de flexibilité
- Assistance par des experts 24h/24 et 7j/7 incluse
Comment supprimer un ou plusieurs conteneurs Docker ?
La suppression d’un ou de plusieurs conteneurs Docker spécifiques est une procédure courante pour supprimer les conteneurs inutiles ou inactifs de l’hôte Docker.
Étape 1 : déterminer l’ID ou le nom du conteneur
Vous devez tout d’abord trouver les ID ou noms des conteneurs que vous souhaitez supprimer. Vous pouvez utiliser la commande suivante pour afficher une liste de tous les conteneurs en cours d’exécution ou arrêtés :
docker ps -a
bashÉtape 2 : supprimer les conteneurs
Vous pouvez simplement indiquer les identifiants ou les noms des conteneurs séparés par des espaces après la commande docker rm :
docker rm container_id_or_name1 container_id_or_name2
bashSupprimer un conteneur à la fermeture
Pour supprimer automatiquement un conteneur Docker à la fermeture, placez l’option (flag) --rm
lorsque vous démarrez le conteneur avec la commande docker run
. Cette option permet que le conteneur soit automatiquement supprimé dès qu’il est arrêté.
docker run --rm nom_image
bashComment supprimer les conteneurs Docker terminés ?
Il est également possible de supprimer tous les conteneurs terminés en une seule fois, en filtrant les conteneurs selon leur état et en les supprimant avec rm
.
Étape 1 : lister les conteneurs terminés
L’option -f status=exited
permet de filtrer la liste des conteneurs pour n’afficher que ceux qui sont terminés.
docker ps -a -f status=exited
bashÉtape 2 : supprimer les conteneurs terminés
L’étape précédente permet d’obtenir les identifiants des conteneurs terminés afin de les transmettre directement à la commande docker rm
.
docker rm $(docker ps -a -f status=exited -q)
bashSupprimer des conteneurs avec plus d’un filtre
Vous pouvez supprimer des conteneurs Docker avec plus d’un filtre en appliquant la commande docker ps
en combinaison avec les options de filtrage, puis en transmettant la sortie à la commande docker rm
.
Étape 1 : lister les conteneurs avec des filtres
La commande docker ps
avec les options de filtre permet de lister les conteneurs en fonction des critères souhaités. « created » est, avec « exited », un autre état sélectionnable. Les conteneurs dans l’état created sont ceux qui ont été créés mais pas encore exécutés.
docker ps -a -f status=exited -f status=created
bashÉtape 2 : supprimer les conteneurs Docker
Comme dans l’exemple précédent, il faut transmettre le résultat à la commande docker rm
.
docker rm $(docker ps -a -f status=exited -f status=created -q)
bashComment supprimer les conteneurs selon un modèle ?
La méthode consiste à trouver tous les conteneurs Docker qui correspondent à un modèle particulier, puis à les supprimer avec awk
, xargs
et docker rm
. Cette technique est un moyen puissant de supprimer des conteneurs de manière sélective.
Étape 1 : trouver tous les conteneurs avec un modèle
Si vous utilisez la commande docker ps -a
en combinaison avec grep
, vous obtiendrez tous les conteneurs dont le nom ou les tags correspondent à un modèle spécifique. Par exemple, cette commande permet de lister les conteneurs dont le nom commence par « test- » :
docker ps -a | grep "test-"
bashÉtape 2 : supprimer les conteneurs Docker
La commande awk
vous permet de sélectionner des colonnes spécifiques dans le résultat de sortie. Dans le cas présent, l’objectif est d’extraire la première colonne, qui contient les identifiants des conteneurs. Ensuite, on peut utiliser xargs
pour transmettre les identifiants à la commande docker rmi
et supprimer les conteneurs Docker.
docker ps -a | grep "test-" | awk '{print $1}'. | xargs docker rmi
bashComment arrêter et supprimer tous les conteneurs ?
Vous pouvez arrêter et supprimer tous les conteneurs actifs et inactifs de votre système en une seule fois. Cela peut être utile si vous souhaitez effectuer un nettoyage complet de votre environnement Docker.
Étape 1 : lister les conteneurs
Pour vérifier la liste des conteneurs, tapez la commande suivante :
docker ps -a
bashÉtape 2 : arrêter les conteneurs
Une fois que vous avez pris votre décision, transférez la sortie de l’étape précédente à docker stop
. Cela arrêtera tous les conteneurs.
docker stop $(docker ps -a -q)
bashÉtape 3 : supprimer les conteneurs Docker arrêtés
Une fois que tous les conteneurs ont été arrêtés, vous pouvez les supprimer avec la commande docker rm
:
docker rm $(docker ps -a -q)
bashContrairement aux conteneurs Docker normaux, les volumes de conteneurs Docker sont des mécanismes avec lesquels les données peuvent être persistées et échangées entre les conteneurs et le système hôte. Vous trouverez dans notre guide d’autres tutoriels sur la manière de supprimer un volume Docker ou une image Docker.