Comment utiliser la commande docker scout cache prune pour gérer le cache

DockerDockerBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous apprendrez à gérer le cache utilisé par la commande docker scout. Lorsque docker scout analyse des images, il met en cache des données telles que les SBOM (Software Bill of Materials) et les informations sur les vulnérabilités pour améliorer les performances. Au fil du temps, ce cache peut consommer beaucoup d'espace disque.

Vous allez explorer la commande docker scout cache prune et ses options. Plus précisément, vous apprendrez à supprimer les données temporaires, à supprimer à la fois les données temporaires et les SBOM mis en cache, et à forcer le processus de suppression sans confirmation. À la fin de ce laboratoire, vous serez en mesure de gérer efficacement le cache de docker scout pour libérer de l'espace disque et vous assurer que vous travaillez avec des données à jour lorsque cela est nécessaire.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker(("Docker")) -.-> docker/SystemManagementGroup(["System Management"]) docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") docker/SystemManagementGroup -.-> docker/prune("Remove Unused Docker Objects") subgraph Lab Skills docker/pull -.-> lab-555199{{"Comment utiliser la commande docker scout cache prune pour gérer le cache"}} docker/prune -.-> lab-555199{{"Comment utiliser la commande docker scout cache prune pour gérer le cache"}} end

Comprendre le but de la commande docker scout cache prune

Dans cette étape, nous allons comprendre le but de la commande docker scout cache prune.

Lorsque vous utilisez docker scout pour analyser des images, il met en cache des données telles que les Software Bill of Materials (SBOM) et les informations sur les vulnérabilités pour accélérer les analyses suivantes. Au fil du temps, ce cache peut devenir volumineux et consommer beaucoup d'espace disque. La commande docker scout cache prune est utilisée pour supprimer ces données mises en cache.

Imaginez - le comme le nettoyage du cache de votre navigateur web. Tout comme le nettoyage du cache de votre navigateur peut libérer de l'espace et parfois résoudre des problèmes, la suppression du cache de Docker Scout peut libérer de l'espace disque et vous assurer que vous travaillez avec des données à jour si nécessaire.

La commande docker scout cache prune propose des options pour contrôler quelles données sont supprimées. Par défaut, elle supprime les données temporaires. Vous pouvez également choisir de supprimer les SBOM mis en cache.

Nous allons explorer ces options dans les étapes suivantes. Pour l'instant, comprenons simplement que cette commande est un outil de maintenance pour gérer les données mises en cache par docker scout.

Supprimer les données temporaires avec la commande docker scout cache prune

Dans cette étape, nous allons supprimer les données temporaires en utilisant la commande docker scout cache prune.

Avant de procéder à la suppression, simulons un peu d'activité avec docker scout pour nous assurer qu'il y a des données à supprimer. Nous allons analyser une image simple.

Tout d'abord, téléchargez une petite image pour travailler.

docker pull hello - world

Vous devriez voir un message indiquant que l'image a été téléchargée avec succès.

Maintenant, exécutons une analyse docker scout sur cette image.

docker scout cves hello - world

Cette commande analyse l'image hello - world pour détecter les Common Vulnerabilities and Exposures (CVEs). Même si hello - world est une image très simple et n'a probablement aucune vulnérabilité, cette commande générera et mettra en cache des données temporaires liées au processus d'analyse.

Vous verrez un message affichant les résultats de l'analyse (probablement indiquant qu'aucune vulnérabilité n'a été trouvée).

Maintenant, supprimons les données temporaires du cache. Exécutez la commande docker scout cache prune sans aucun indicateur supplémentaire.

docker scout cache prune

Lorsque vous exécutez cette commande, vous serez invité à confirmer l'action. C'est une mesure de sécurité pour éviter une perte de données accidentelle.

WARNING! This will remove all temporary cache data. Are you sure you want to continue? [y/N]

Tapez y puis appuyez sur Entrée pour confirmer.

y

Vous devriez voir un message indiquant que les données temporaires du cache ont été supprimées et la quantité d'espace récupérée. Le message exact peut varier en fonction de la quantité de données temporaires mises en cache.

Cette commande cible spécifiquement les fichiers temporaires et les données générées lors des opérations docker scout, ce qui permet de garder votre cache propre sans supprimer des données plus persistantes telles que les SBOM mis en cache (que nous aborderons dans l'étape suivante).

Supprimer les données temporaires et les SBOM mis en cache avec la commande docker scout cache prune --sboms

Dans cette étape, nous allons supprimer à la fois les données temporaires et les SBOM (Software Bill of Materials) mis en cache en utilisant la commande docker scout cache prune --sboms.

Dans l'étape précédente, nous avons seulement supprimé les données temporaires. Les SBOM mis en cache sont des données plus persistantes générées lorsque docker scout analyse une image pour créer un état des matériaux logiciels. Conserver les SBOM mis en cache peut accélérer les futures analyses de la même image, mais ils consomment également de l'espace disque.

Pour démontrer la suppression des SBOM, analysons d'abord une image pour générer un SBOM. Nous utiliserons l'image ubuntu pour cela.

docker pull ubuntu

Cette commande télécharge l'image ubuntu.

Maintenant, générons et mettons en cache le SBOM pour l'image ubuntu.

docker scout sbom ubuntu

Cette commande génère le SBOM pour l'image ubuntu et le met en cache. Vous verrez la sortie du SBOM dans votre terminal.

Maintenant, supprimons à la fois les données temporaires et les SBOM mis en cache. Nous utiliserons le paramètre --sboms avec la commande docker scout cache prune.

docker scout cache prune --sboms

Encore une fois, vous serez invité à confirmer l'action. Cette fois, l'avertissement indiquera que les données temporaires et les SBOM mis en cache seront supprimés.

WARNING! This will remove all temporary cache data and cached SBOMs. Are you sure you want to continue? [y/N]

Tapez y puis appuyez sur Entrée pour confirmer.

y

Vous devriez voir un message indiquant que les données temporaires du cache et les SBOM mis en cache ont été supprimés, ainsi que la quantité d'espace récupérée. L'espace récupéré devrait être plus important que dans l'étape précédente car les SBOM mis en cache ont également été supprimés.

L'utilisation du paramètre --sboms vous permet de nettoyer plus radicalement le cache, ce qui est utile lorsque vous avez besoin de libérer plus d'espace disque ou si vous soupçonnez des problèmes avec les données des SBOM mis en cache.

Forcer la suppression sans confirmation avec la commande docker scout cache prune --force

Dans cette étape, nous allons apprendre à forcer la suppression du cache de Docker Scout sans être invité à confirmer, en utilisant le paramètre --force.

Par défaut, la commande docker scout cache prune demande la confirmation de l'utilisateur pour éviter une suppression accidentelle de données. Cependant, dans des scripts automatisés ou dans des situations où vous êtes certain de vouloir supprimer le cache, le paramètre --force peut être utilisé pour sauter l'invite de confirmation.

Commençons par générer à nouveau des données de cache. Nous allons analyser l'image alpine cette fois-ci.

docker pull alpine

Cette commande télécharge l'image alpine.

Maintenant, exécutons une analyse docker scout sur cette image pour générer des données de cache.

docker scout cves alpine

Cela analyse l'image alpine pour les CVEs (Common Vulnerabilities and Exposures) et met en cache les résultats.

Maintenant, nous allons supprimer le cache en utilisant le paramètre --force. Nous allons également inclure le paramètre --sboms pour supprimer à la fois les données temporaires et les SBOM (Software Bill of Materials) mis en cache, car c'est un cas d'utilisation courant pour la suppression forcée.

docker scout cache prune --sboms --force

Notez que cette fois, vous n'êtes pas invité à confirmer l'action. La commande s'exécute immédiatement et supprime les données de cache spécifiées.

Vous devriez voir un message indiquant que les données temporaires du cache et les SBOM mis en cache ont été supprimés, similaire à l'étape précédente, mais sans l'invite interactive.

L'utilisation du paramètre --force doit être faite avec prudence, car elle contourne la confirmation de sécurité. Il est préférable de l'utiliser dans des environnements non interactifs ou lorsque vous êtes absolument sûr de l'opération de suppression.

Résumé

Dans ce laboratoire (lab), nous avons appris le but de la commande docker scout cache prune, qui est utilisée pour gérer les données de cache générées par les analyses de docker scout, telles que les SBOM (Software Bill of Materials) et les informations sur les vulnérabilités. Cette commande aide à libérer de l'espace disque et garantit que vous travaillez avec des données à jour lorsque cela est nécessaire.

Ensuite, nous avons pratiqué l'utilisation de la commande pour supprimer les données temporaires générées par une analyse docker scout cves sur l'image hello-world. Nous avons également exploré le paramètre --sboms pour supprimer à la fois les données temporaires et les SBOM mis en cache, ainsi que le paramètre --force pour contourner l'invite de confirmation lors de la suppression.