Verwendung des Befehls docker checkpoint ls zur Auflistung von Container-Checkpoints

DockerDockerBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie den Befehl docker checkpoint ls verwenden, um Checkpoints für einen Docker-Container aufzulisten. Wir beginnen mit der Erstellung eines Containers und anschließend mit der Erstellung eines Checkpoints dafür.

Nach der Erstellung eines Checkpoints werden Sie untersuchen, wie Sie die mit dem Container verknüpften Checkpoints mit dem Standardbefehl docker checkpoint ls auflisten können. Abschließend lernen Sie, wie Sie Checkpoints auflisten, wenn ein benutzerdefiniertes Checkpoint-Verzeichnis angegeben wurde.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker/ContainerOperationsGroup -.-> docker/run("Run a Container") docker/ContainerOperationsGroup -.-> docker/ps("List Running Containers") docker/ContainerOperationsGroup -.-> docker/stop("Stop Container") docker/ContainerOperationsGroup -.-> docker/rm("Remove Container") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") subgraph Lab Skills docker/run -.-> lab-555067{{"Verwendung des Befehls docker checkpoint ls zur Auflistung von Container-Checkpoints"}} docker/ps -.-> lab-555067{{"Verwendung des Befehls docker checkpoint ls zur Auflistung von Container-Checkpoints"}} docker/stop -.-> lab-555067{{"Verwendung des Befehls docker checkpoint ls zur Auflistung von Container-Checkpoints"}} docker/rm -.-> lab-555067{{"Verwendung des Befehls docker checkpoint ls zur Auflistung von Container-Checkpoints"}} docker/pull -.-> lab-555067{{"Verwendung des Befehls docker checkpoint ls zur Auflistung von Container-Checkpoints"}} end

Container und Checkpoint erstellen

In diesem Schritt lernen Sie, wie Sie einen Docker-Container erstellen und anschließend einen Checkpoint dafür anlegen. Das Checkpointing ermöglicht es, den Zustand eines laufenden Containers zu speichern und später wiederherzustellen. Dies ist nützlich für Debugging, Migration oder das Erstellen von Snapshots Ihrer Anwendung.

Zuerst laden wir ein einfaches Image herunter, das wir für einen Container verwenden können. Wir verwenden das ubuntu-Image.

docker pull ubuntu:latest

Sie sollten eine Ausgabe sehen, die anzeigt, dass das Image heruntergeladen wird.

latest: Pulling from library/ubuntu
...
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

Nun starten wir einen Container mit diesem Image. Wir führen einen einfachen Befehl aus, der den Container für eine Weile am Laufen hält.

docker run -d --name mycontainer ubuntu:latest sleep 3600

Hier eine Erklärung des Befehls:

  • docker run: Dieser Befehl wird verwendet, um einen neuen Container zu starten.
  • -d: Dieser Parameter startet den Container im Detached-Modus, d.h. er läuft im Hintergrund.
  • --name mycontainer: Weist dem Container den Namen mycontainer zu.
  • ubuntu:latest: Gibt das zu verwendende Image für den Container an.
  • sleep 3600: Dies ist der Befehl, der im Container ausgeführt wird. Er hält den Container für 3600 Sekunden (1 Stunde) aktiv.

Sie können überprüfen, ob der Container läuft, indem Sie den Befehl docker ps verwenden.

docker ps

Sie sollten eine ähnliche Ausgabe sehen, die Ihren mycontainer als laufend anzeigt:

CONTAINER ID   IMAGE          COMMAND         CREATED         STATUS         PORTS     NAMES
<container_id>   ubuntu:latest   "sleep 3600"   About a minute ago   Up About a minute             mycontainer

Nachdem wir nun einen laufenden Container haben, erstellen wir einen Checkpoint dafür. Um einen Checkpoint zu erstellen, verwenden Sie den Befehl docker checkpoint create.

docker checkpoint create mycontainer mycheckpoint1

Hier eine Erklärung des Befehls:

  • docker checkpoint create: Dieser Befehl erstellt einen Checkpoint für einen Container.
  • mycontainer: Der Name des Containers, für den der Checkpoint erstellt werden soll.
  • mycheckpoint1: Der Name, den Sie dem Checkpoint geben.

Wenn der Befehl erfolgreich ist, sehen Sie keine Ausgabe. Dies bedeutet, dass der Checkpoint mycheckpoint1 für den Container mycontainer erstellt wurde.

Checkpoints eines Containers auflisten

Im vorherigen Schritt haben wir einen Checkpoint namens mycheckpoint1 für unseren Container mycontainer erstellt. Nun lernen wir, wie man die vorhandenen Checkpoints für einen bestimmten Container auflistet.

Um die Checkpoints eines Containers aufzulisten, verwenden Sie den Befehl docker checkpoint ls gefolgt vom Containernamen.

docker checkpoint ls mycontainer

Dieser Befehl zeigt eine Liste aller mit mycontainer verknüpften Checkpoints an.

Sie sollten eine ähnliche Ausgabe sehen, die den im vorherigen Schritt erstellten Checkpoint anzeigt:

CHECKPOINT ID
mycheckpoint1

Diese Ausgabe bestätigt, dass der Checkpoint mycheckpoint1 für den Container mycontainer existiert.

Sie können mehrere Checkpoints für denselben Container erstellen. Lassen Sie uns einen weiteren Checkpoint erstellen, um zu sehen, wie sich die Liste ändert.

docker checkpoint create mycontainer mycheckpoint2

Listen Sie nun die Checkpoints erneut auf:

docker checkpoint ls mycontainer

Diesmal sollte die Ausgabe beide Checkpoints anzeigen:

CHECKPOINT ID
mycheckpoint1
mycheckpoint2

Dies demonstriert, wie Sie alle mit einem bestimmten Container verknüpften Checkpoints auflisten können.

Checkpoints mit benutzerdefiniertem Verzeichnis auflisten

In den vorherigen Schritten haben wir Checkpoints für unseren Container mycontainer erstellt und sie mit dem Standard-Checkpoint-Verzeichnis aufgelistet. Docker speichert Checkpoints standardmäßig an einem vordefinierten Ort, Sie können jedoch auch ein benutzerdefiniertes Verzeichnis für die Speicherung angeben. Dies ist nützlich, um Checkpoints zu organisieren oder auf einem anderen Volume zu speichern.

Um einen Checkpoint in einem benutzerdefinierten Verzeichnis zu erstellen, verwenden Sie das Flag --checkpoint-dir mit dem Befehl docker checkpoint create. Zuerst erstellen wir ein Verzeichnis für unseren benutzerdefinierten Checkpoint. Wir legen ein Verzeichnis namens mycheckpoints in unserem Projektverzeichnis an.

mkdir ~/project/mycheckpoints

Nun erstellen wir einen neuen Checkpoint für mycontainer und speichern ihn im Verzeichnis ~/project/mycheckpoints.

docker checkpoint create --checkpoint-dir ~/project/mycheckpoints mycontainer mycheckpoint3

Hier die Erklärung des Befehls:

  • docker checkpoint create: Dieser Befehl erstellt einen Checkpoint.
  • --checkpoint-dir ~/project/mycheckpoints: Dieses Flag gibt das benutzerdefinierte Verzeichnis für die Speicherung an.
  • mycontainer: Der Name des Containers, für den der Checkpoint erstellt wird.
  • mycheckpoint3: Der Name für diesen neuen Checkpoint.

Bei erfolgreicher Ausführung sehen Sie keine Ausgabe. Dies bedeutet, dass der Checkpoint mycheckpoint3 im Verzeichnis ~/project/mycheckpoints erstellt wurde.

Um Checkpoints in einem benutzerdefinierten Verzeichnis aufzulisten, verwenden Sie den Befehl docker checkpoint ls mit dem Flag --checkpoint-dir und dem entsprechenden Verzeichnis.

docker checkpoint ls --checkpoint-dir ~/project/mycheckpoints mycontainer

Dieser Befehl listet die Checkpoints im angegebenen Verzeichnis für den Container mycontainer auf.

Die Ausgabe sollte ähnlich wie folgt aussehen und nur den im benutzerdefinierten Verzeichnis erstellten Checkpoint anzeigen:

CHECKPOINT ID
mycheckpoint3

Beachten Sie, dass dieser Befehl nur die Checkpoints im angegebenen Verzeichnis (mycheckpoint3) auflistet und nicht die im Standardverzeichnis gespeicherten Checkpoints (mycheckpoint1 und mycheckpoint2).

Um alle Checkpoints für den Container unabhängig vom Speicherort anzuzeigen, müssten Sie die Checkpoints aus jedem Verzeichnis separat auflisten oder ein Tool verwenden, das diese Informationen zusammenführt. Für die Auflistung in einem bestimmten benutzerdefinierten Verzeichnis ist das Flag --checkpoint-dir jedoch essenziell.

Abschließend bereinigen wir den erstellten Container.

docker stop mycontainer
docker rm mycontainer

Dies stoppt und entfernt den Container mycontainer.

Zusammenfassung

In diesem Lab haben wir gelernt, wie man den Befehl docker checkpoint ls verwendet, um Checkpoints für einen Docker-Container aufzulisten. Wir begannen mit der Erstellung eines Containers und erstellten dann einen Checkpoint mit dem Befehl docker checkpoint create.

Anschließend haben wir untersucht, wie die erstellten Checkpoints für den Container mit dem Befehl docker checkpoint ls aufgelistet werden können. Abschließend lernten wir, wie Checkpoints in einem benutzerdefinierten Checkpoint-Verzeichnis aufgelistet werden, was die Flexibilität bei der Verwaltung von Checkpoints an verschiedenen Speicherorten demonstriert.