Purge
Cette procédure permet de supprimer l'intégralité des données de Docker (conteneurs, images, volumes, réseaux et cache) pour retrouver un environnement "vierge", tout en conservant l'installation de Docker Engine.
1. Arrêt et suppression des conteneurs
La première étape consiste à stopper tous les processus en cours pour libérer les ressources.
- Arrêter tous les conteneurs :
Bashdocker stop $(docker ps -aq) - Supprimer tous les conteneurs :
Bashdocker rm $(docker ps -aq)
2. Suppression des images
Pour libérer l'espace disque occupé par les systèmes de fichiers superposés.
- Supprimer toutes les images (utilisées ou non) :
Bashdocker rmi -f $(docker images -aq)
3. Suppression des volumes et réseaux
Les volumes contiennent vos données persistantes et les réseaux vos configurations de ponts personnalisées.
- Supprimer tous les volumes :
Bashdocker volume rm $(docker volume ls -q) - Supprimer les réseaux personnalisés : (Note : Les réseaux par défaut comme 'bridge', 'host' et 'none' ne seront pas supprimés)
Bashdocker network rm $(docker network ls -q)
4. Nettoyage du cache de construction (Build Kit)
Docker conserve des traces des étapes de construction pour accélérer les futurs docker build. Pour une purge totale, il faut les vider.
- Supprimer le cache de build :
Bashdocker builder prune -a -f
5. La commande "All-in-One" (Le Grand Ménage)
Si vous souhaitez exécuter l'intégralité de ces étapes en une seule ligne de commande sécurisée (elle vérifie d'abord s'il y a des éléments à supprimer pour éviter les erreurs de syntaxe), utilisez celle-ci :
Bash
docker stop $(docker ps -aq) 2>/dev/null; docker system prune -a --volumes -f
Détail de la commande All-in-One :
docker stop ...: Arrête proprement tous les conteneurs.2>/dev/null: Masque les erreurs si aucun conteneur n'est en cours.docker system prune: La commande native de Docker pour le nettoyage.-a: Supprime toutes les images inutilisées, pas seulement les "dangling" (sans nom).--volumes: Force la suppression des volumes (non inclus par défaut dans le prune).-f: Force l'exécution sans demander de confirmation (mode automatique).
Attention : Cette opération est irréversible. Toutes les données contenues dans les bases de données (volumes) et les configurations spécifiques seront perdues.