# Espace disque plein dans `/var/lib/docker` ## 1. Vérifier l'espace disque Confirmer que la partition contenant `/var/lib/docker` est pleine : ```bash df -h /var/lib/docker ``` Vérifier que la tâche cron de purge est configurée pour l'utilisateur `SYSTEL` : ```bash crontab -l ``` La ligne attendue, précédée de son commentaire, est : ```cron # Purge docker unused data every sunday at 14 0 14 * * 7 docker system prune -f ``` Cette tâche exécute une purge chaque dimanche à 14 h. Si elle est absente, l'ajouter avec `crontab -e` sous le compte `SYSTEL`. Vérifier dans les journaux système si la commande apparaît : ```bash grep 'docker system prune -f' /var/log/syslog ``` ## 2. Identifier les ressources Docker volumineuses Afficher l'espace consommé par les composants Docker : ```bash docker system df ``` Lister les sous-répertoires les plus volumineux d'`overlay2` : ```bash sudo du -h /var/lib/docker/overlay2 | sort -h | tail ``` Afficher la taille des conteneurs : ```bash docker ps -a --format "table {{.ID}}\t{{.Image}}\t{{.Status}}\t{{.Size}}" ``` La colonne `SIZE` contient deux valeurs, par exemple `40.2kB (virtual 958MB)` : - `40.2kB` correspond à la taille de la couche inscriptible du conteneur; - `virtual 958MB` comprend la couche du conteneur et l'image utilisée. Lister ensuite les images présentes : ```bash docker image ls ``` > **Important :** ne jamais supprimer manuellement les répertoires sous `/var/lib/docker/overlay2`. Cela peut endommager l'état de Docker et les conteneurs. Utiliser les commandes Docker prévues pour le nettoyage. ## 3. Nettoyer les ressources inutilisées `docker system prune -a` supprime les conteneurs arrêtés, les réseaux inutilisés, les images qui ne sont utilisées par aucun conteneur et le cache de build. Il ne supprime pas les volumes sans l'option `--volumes`. Pour examiner la demande de confirmation avant la purge, exécuter : ```bash docker system prune -a ``` Après avoir vérifié le périmètre annoncé, confirmer uniquement si ces ressources peuvent être supprimées et si les images nécessaires pourront être récupérées ou reconstruites. La commande non interactive indiquée dans la procédure source est : ```bash docker system prune -af ``` L'option `-f` contourne la confirmation. Ne l'utiliser qu'après vérification et autorisation de la purge. Ne pas ajouter `--volumes` sans validation spécifique : cela pourrait supprimer des données persistantes. ## 4. Vérifier le résultat Après le nettoyage, contrôler de nouveau l'espace disque et l'utilisation Docker : ```bash df -h /var/lib/docker docker system df ``` Si l'espace reste insuffisant, identifier les images ou conteneurs concernés avec les commandes de diagnostic ci-dessus et suivre la procédure de maintenance de l'application. Ne pas supprimer les fichiers Docker manuellement.