Introduction
Dans ce lab, vous apprendrez à utiliser la commande docker checkpoint ls pour lister les points de contrôle (checkpoints) d'un conteneur Docker. Nous commencerons par créer un conteneur, puis nous créerons un point de contrôle pour celui-ci.
Après la création d'un point de contrôle, vous explorerez comment lister les points de contrôle associés au conteneur en utilisant la commande standard docker checkpoint ls. Enfin, vous apprendrez comment lister les points de contrôle lorsqu'un répertoire personnalisé a été spécifié pour les checkpoints.
Créer un conteneur et un checkpoint
Dans cette étape, nous allons apprendre à créer un conteneur Docker puis à générer un point de contrôle (checkpoint) pour celui-ci. Le checkpointing permet de sauvegarder l'état d'un conteneur en cours d'exécution et de le restaurer ultérieurement. Cette fonctionnalité est utile pour le débogage, la migration ou la création d'instantanés de votre application.
Commencez par télécharger une image simple que nous utiliserons pour exécuter un conteneur. Nous utiliserons l'image ubuntu.
docker pull ubuntu:latest
Vous devriez voir une sortie indiquant que l'image est en cours de téléchargement.
latest: Pulling from library/ubuntu
...
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest
Maintenant, exécutons un conteneur à partir de cette image. Nous allons lancer une commande simple qui maintient le conteneur actif pendant un certain temps.
docker run -d --name mycontainer ubuntu:latest sleep 3600
Voici la signification des options de la commande :
docker run: Cette commande permet d'exécuter un nouveau conteneur.-d: Ce flag exécute le conteneur en mode détaché (en arrière-plan).--name mycontainer: Attribue le nommycontainerau conteneur.ubuntu:latest: Spécifie l'image à utiliser pour le conteneur.sleep 3600: Commande exécutée dans le conteneur qui le maintient actif pendant 3600 secondes (1 heure).
Vous pouvez vérifier que le conteneur est en cours d'exécution avec la commande docker ps.
docker ps
Vous devriez obtenir une sortie similaire à celle-ci, montrant votre conteneur mycontainer en cours d'exécution :
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
<container_id> ubuntu:latest "sleep 3600" About a minute ago Up About a minute mycontainer
Maintenant que nous avons un conteneur en cours d'exécution, créons un point de contrôle pour celui-ci. Pour créer un checkpoint, utilisez la commande docker checkpoint create.
docker checkpoint create mycontainer mycheckpoint1
Explication des paramètres :
docker checkpoint create: Commande pour créer un point de contrôle.mycontainer: Nom du conteneur à checkpoint.mycheckpoint1: Nom que vous attribuez au checkpoint.
Si la commande réussit, aucune sortie ne s'affiche. Cela signifie que le checkpoint mycheckpoint1 a bien été créé pour le conteneur mycontainer.
Lister les checkpoints du conteneur
Dans l'étape précédente, nous avons créé un point de contrôle nommé mycheckpoint1 pour notre conteneur mycontainer. Voyons maintenant comment lister les checkpoints existants pour un conteneur spécifique.
Pour lister les points de contrôle d'un conteneur, utilisez la commande docker checkpoint ls suivie du nom du conteneur.
docker checkpoint ls mycontainer
Cette commande affichera la liste de tous les checkpoints associés au conteneur mycontainer.
Vous devriez obtenir une sortie similaire à celle-ci, montrant le checkpoint créé précédemment :
CHECKPOINT ID
mycheckpoint1
Cette sortie confirme que le checkpoint mycheckpoint1 existe bien pour le conteneur mycontainer.
Il est possible de créer plusieurs checkpoints pour le même conteneur. Créons un second checkpoint pour observer l'évolution de la liste.
docker checkpoint create mycontainer mycheckpoint2
Listez à nouveau les checkpoints :
docker checkpoint ls mycontainer
Cette fois, la sortie devrait afficher les deux checkpoints :
CHECKPOINT ID
mycheckpoint1
mycheckpoint2
Ceci démontre comment lister tous les points de contrôle associés à un conteneur particulier.
Lister les checkpoints avec un répertoire personnalisé
Dans les étapes précédentes, nous avons créé des checkpoints pour notre conteneur mycontainer et les avons listés en utilisant le répertoire par défaut. Docker stocke les checkpoints à un emplacement par défaut, mais vous pouvez également spécifier un répertoire personnalisé pour les stocker. Cela peut être utile pour organiser les checkpoints ou les stocker sur un volume différent.
Pour créer un checkpoint dans un répertoire personnalisé, utilisez l'option --checkpoint-dir avec la commande docker checkpoint create. Commençons par créer un répertoire pour stocker notre checkpoint personnalisé. Nous allons créer un répertoire nommé mycheckpoints dans notre répertoire personnel.
mkdir ~/project/mycheckpoints
Maintenant, créons un nouveau checkpoint pour mycontainer et stockons-le dans le répertoire ~/project/mycheckpoints.
docker checkpoint create --checkpoint-dir ~/project/mycheckpoints mycontainer mycheckpoint3
Explication des paramètres :
docker checkpoint create: Commande pour créer un checkpoint--checkpoint-dir ~/project/mycheckpoints: Spécifie le répertoire personnalisé de stockagemycontainer: Nom du conteneur à checkpointmycheckpoint3: Nom donné à ce nouveau checkpoint
Si la commande réussit, aucune sortie ne s'affiche. Cela signifie que le checkpoint mycheckpoint3 a bien été créé dans le répertoire ~/project/mycheckpoints.
Pour lister les checkpoints stockés dans un répertoire personnalisé, utilisez la commande docker checkpoint ls avec l'option --checkpoint-dir en spécifiant le répertoire.
docker checkpoint ls --checkpoint-dir ~/project/mycheckpoints mycontainer
Cette commande liste les checkpoints trouvés dans le répertoire spécifié pour le conteneur mycontainer.
Vous devriez voir une sortie similaire à ceci, montrant uniquement le checkpoint créé dans le répertoire personnalisé :
CHECKPOINT ID
mycheckpoint3
Notez que cette commande ne liste que les checkpoints du répertoire spécifié (mycheckpoint3) et n'affiche pas ceux stockés à l'emplacement par défaut (mycheckpoint1 et mycheckpoint2).
Pour voir tous les checkpoints du conteneur, quel que soit leur emplacement de stockage, vous devrez les lister depuis chaque répertoire séparément ou utiliser un outil d'agrégation. Pour lister les checkpoints d'un répertoire spécifique, l'option --checkpoint-dir est essentielle.
Enfin, nettoyons le conteneur créé.
docker stop mycontainer
docker rm mycontainer
Ces commandes arrêtent et suppriment le conteneur mycontainer.
Résumé
Dans ce lab, nous avons appris à utiliser la commande docker checkpoint ls pour lister les points de contrôle d'un conteneur Docker. Nous avons commencé par créer un conteneur, puis généré un checkpoint à l'aide de la commande docker checkpoint create.
Nous avons ensuite exploré comment lister les checkpoints créés pour le conteneur en utilisant la commande docker checkpoint ls. Enfin, nous avons appris à lister les checkpoints situés dans un répertoire personnalisé, démontrant ainsi la flexibilité de gestion des checkpoints dans différents emplacements.



