Wie man den Befehl docker manifest rm verwendet, um Manifestlisten zu löschen

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 Docker-Manifestlisten verwalten, die für die Erstellung von Multi-Architektur-Images unerlässlich sind. Wir werden den Prozess der Erstellung einer Manifestliste durch die Kombination von Images für verschiedene Plattformen abdecken, deren Existenz mithilfe des Befehls docker manifest inspect überprüfen und schließlich zeigen, wie Sie eine Manifestliste mit dem Befehl docker manifest rm löschen. Diese praktische Übung gibt Ihnen praktische Erfahrungen bei der Verwaltung von Manifestlisten in Ihrem Docker-Workflow.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker/ContainerOperationsGroup -.-> docker/rm("Remove Container") docker/ContainerOperationsGroup -.-> docker/inspect("Inspect Container") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") docker/ImageOperationsGroup -.-> docker/rmi("Remove Image") subgraph Lab Skills docker/rm -.-> lab-555172{{"Wie man den Befehl docker manifest rm verwendet, um Manifestlisten zu löschen"}} docker/inspect -.-> lab-555172{{"Wie man den Befehl docker manifest rm verwendet, um Manifestlisten zu löschen"}} docker/pull -.-> lab-555172{{"Wie man den Befehl docker manifest rm verwendet, um Manifestlisten zu löschen"}} docker/rmi -.-> lab-555172{{"Wie man den Befehl docker manifest rm verwendet, um Manifestlisten zu löschen"}} end

Erstellen einer Manifestliste

In diesem Schritt lernen wir, wie man in Docker eine Manifestliste erstellt. Eine Manifestliste ist eine Liste von Image-Manifesten, die es Ihnen ermöglicht, einen einzigen Image-Namen zu verwenden, um auf Images für verschiedene Architekturen und Betriebssysteme zu verweisen. Dies ist besonders nützlich für das Erstellen von Multi-Architektur-Images.

Zunächst ziehen wir zwei verschiedene Images, die wir zur Erstellung unserer Manifestliste verwenden werden. Wir werden das alpine-Image für die amd64- und arm64-Architekturen nutzen.

docker pull alpine:latest
docker pull --platform arm64 alpine:latest

Der erste Befehl zieht das alpine:latest-Image für Ihre aktuelle Architektur (wahrscheinlich amd64). Der zweite Befehl zieht explizit das alpine:latest-Image für die arm64-Architektur.

Jetzt können wir die Manifestliste mit dem Befehl docker manifest create erstellen. Die Syntax lautet docker manifest create ZIEL_IMAGE QUELL_IMAGE [QUELL_IMAGE...]. Wir werden eine Manifestliste namens my-alpine:latest erstellen, die die alpine:latest-Images für amd64 und arm64 enthält.

docker manifest create my-alpine:latest alpine:latest alpine:latest --amend alpine:latest --platform arm64

In diesem Befehl:

  • my-alpine:latest ist der Name der neuen Manifestliste, die wir erstellen.
  • alpine:latest ist das erste Quell-Image (für die Standard-Architektur).
  • --amend alpine:latest --platform arm64 fügt das alpine:latest-Image für die arm64-Plattform zur Manifestliste hinzu.

Nachdem Sie diesen Befehl ausgeführt haben, haben Sie lokal eine Manifestliste erstellt. Sie wurde jedoch noch nicht an ein Registry gepusht. Dies werden wir in einem späteren Schritt tun.

Überprüfen, ob die Manifestliste existiert

Im vorherigen Schritt haben wir eine Manifestliste namens my-alpine:latest erstellt. Jetzt werden wir überprüfen, ob diese Manifestliste erfolgreich erstellt wurde und lokal existiert.

Wir können den Befehl docker manifest inspect verwenden, um die Details einer Manifestliste anzuzeigen. Dieser Befehl gibt den Inhalt der Manifestliste im JSON-Format aus, wenn sie existiert.

docker manifest inspect my-alpine:latest

Wenn die Manifestliste my-alpine:latest erfolgreich erstellt wurde, sehen Sie eine JSON-Ausgabe, die die Manifestliste beschreibt, einschließlich der verschiedenen Images, auf die sie für verschiedene Architekturen verweist. Wenn die Manifestliste nicht existiert, gibt der Befehl einen Fehler zurück.

Die Ausgabe zeigt Informationen über die Manifestliste, wie die Schema-Version, den Medientyp und eine Liste der Manifeste für jede enthaltene Architektur. Sie sollten Einträge für die amd64- und arm64-Architekturen sehen, was bestätigt, dass die Manifestliste korrekt erstellt wurde und auf die Images für diese Plattformen verweist.

Löschen der Manifestliste

In den vorherigen Schritten haben wir eine Manifestliste namens my-alpine:latest erstellt und ihre Existenz überprüft. Jetzt lernen wir, wie wir diese Manifestliste löschen können.

Um eine Manifestliste zu löschen, verwenden wir den Befehl docker manifest rm gefolgt vom Namen der Manifestliste.

docker manifest rm my-alpine:latest

Dieser Befehl entfernt die lokale Referenz auf die Manifestliste my-alpine:latest. Beachten Sie, dass dieser Befehl nur die Manifestliste selbst entfernt, nicht die einzelnen Images, auf die die Manifestliste verweist. Die alpine:latest-Images für amd64 und arm64, die wir zuvor heruntergeladen haben, bleiben weiterhin auf Ihrem System.

Nach der Ausführung des Befehls sollten Sie eine Ausgabe sehen, die angibt, dass die Manifestliste enttaggt wurde.

Überprüfen, ob die Manifestliste gelöscht wurde

Im vorherigen Schritt haben wir die Manifestliste namens my-alpine:latest gelöscht. Jetzt werden wir überprüfen, ob die Manifestliste erfolgreich gelöscht wurde und lokal nicht mehr existiert.

Wir können versuchen, die Manifestliste erneut mit dem Befehl docker manifest inspect zu untersuchen. Wenn die Manifestliste erfolgreich gelöscht wurde, sollte dieser Befehl einen Fehler zurückgeben, der darauf hinweist, dass die Manifestliste nicht gefunden wurde.

docker manifest inspect my-alpine:latest

Wenn Sie diesen Befehl nach dem Löschen der Manifestliste ausführen, sollten Sie eine Fehlermeldung ähnlich wie no such manifest: docker.io/library/my-alpine:latest sehen. Dies bestätigt, dass die Manifestliste aus Ihrer lokalen Docker-Umgebung entfernt wurde.

Zusammenfassung

In diesem Lab haben wir gelernt, wie man Docker-Manifestlisten erstellt und verwaltet. Wir haben begonnen, indem wir Images für verschiedene Architekturen heruntergeladen und dann den Befehl docker manifest create verwendet haben, um sie zu einer einzigen Manifestliste zusammenzufassen, was zeigt, wie man Multi-Architektur-Images erstellt.

Nach der Erstellung haben wir die Existenz der Manifestliste mit dem Befehl docker manifest inspect überprüft. Schließlich haben wir gelernt, wie man die Manifestliste mit dem Befehl docker manifest rm löscht und ihre Löschung bestätigt, was die wesentlichen Aspekte des Lebenszyklus-Managements von Manifestlisten in Docker abdeckt.