Nettoyage de Docker

Avec le temps qui passe en cours de développement à Docker, nous avons tendance à accumuler beaucoup d'images inutilisées. Parfois pour tester, rechercher ou simplement essayer de nouvelles choses amusantes. C'est toujours cool d'exécuter de nouveaux logiciels dans des conteneurs, ce qui ouvre de nouvelles possibilités pour ceux d'entre nous qui souhaitent constamment apprendre de nouvelles technologies. L'inconvénient est que beaucoup de mémoire SSD précieuse est occupée par des images rarement utilisées ou inutilisées, le pire est que nous le remarquons à peine. Mais les gars de Docker Inc. ont fait une grande tâche en gardant une trace de tout ce qui concerne Docker.

Dites bonjour à la systemcommande, qui fait partie des commandes de gestion de docker et tout simplement génial. La systemcommande fournit des informations sur l'utilisation du disque aux informations à l'échelle du système, ce n'est pas cool.

Utilisation du disque à l'aide de la dfcommande:

$ docker system df

Renvoie quelque chose comme ça,

TYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 35 6 8.332GB 7.364GB (88%) Containers 12 12 417.6MB 0B (0%) Local Volumes 67 2 2.828GB 2.828GB (100%) Build Cache 0B 0B

Notez que Reclaimablec'est la taille que vous pouvez récupérer, elle est calculée en soustrayant la taille des images actives de la taille des images totales.

Événements en temps réel à l'aide de la eventscommande:

$ docker system events

Renvoie la liste des événements en temps réel du serveur, en fonction des types d'objets Docker.

Formatage de la sortie

--format 'Type={{.Type}} Status={{.Status}} ID={{.ID}}'

ou formatez simplement la sortie en JSON

$ docker system events --format '{{json .}}'

Informations à l'échelle du système à l'aide de la infocommande:

Une autre commande intéressante pour obtenir toutes les informations relatives au système est la infocommande. Vous serez étonné de voir la quantité d'informations que vous pouvez obtenir.

$ docker system info

Supprimez les données inutilisées à l'aide de la prunecommande:

Maintenant que nous avons toutes les informations dont nous avons besoin, son temps de nettoyage, mais attention à ne pas utiliser cette commande à moitié endormie.

$ docker system prune WARNING! This will remove: - all stopped containers - all networks not used by at least one container - all dangling images - all build cache Are you sure you want to continue? [y/N]

De plus, nous pouvons supprimer exactement ce que nous voulons, en utilisant l'une des commandes suivantes, régaler vos yeux mesdames et messieurs.

$ docker system prune -a --volumes $ docker image prune $ docker container prune $ docker volume prune $ docker network prune

Toutes les commandes ci-dessus vous demanderont une confirmation, alors lavez votre visage à l'eau froide ou prenez une photo d'Espresso avant d'émettre l'un de ceux-ci;).