So nutzen Sie den Befehl docker plugin upgrade, um ein Plugin zu aktualisieren

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-Plugins verwalten, wobei der Schwerpunkt speziell auf dem Upgrade-Prozess liegt. Sie beginnen damit, ein Docker-Plugin zu installieren und zu verwenden, um seine grundlegende Funktionalität und die Art und Weise zu verstehen, wie es sich in Docker integriert.

Nach der ersten Einrichtung lernen Sie die erforderlichen Schritte kennen, um ein Plugin für ein Upgrade vorzubereiten, was das Deaktivieren des Plugins umfasst. Abschließend führen Sie das Upgrade mit dem Befehl docker plugin upgrade durch und aktivieren dann das aktualisierte Plugin erneut und überprüfen, ob es ordnungsgemäß funktioniert. In diesem Lab erhalten Sie praktische Erfahrungen mit der Lebenszyklusverwaltung von Docker-Plugins.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/VolumeOperationsGroup(["Volume Operations"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/ContainerOperationsGroup -.-> docker/inspect("Inspect Container") docker/VolumeOperationsGroup -.-> docker/volume("Manage Volumes") subgraph Lab Skills docker/ls -.-> lab-555196{{"So nutzen Sie den Befehl docker plugin upgrade, um ein Plugin zu aktualisieren"}} docker/inspect -.-> lab-555196{{"So nutzen Sie den Befehl docker plugin upgrade, um ein Plugin zu aktualisieren"}} docker/volume -.-> lab-555196{{"So nutzen Sie den Befehl docker plugin upgrade, um ein Plugin zu aktualisieren"}} end

Installation und Verwendung eines Docker-Plugins

In diesem Schritt lernen Sie, wie Sie ein Docker-Plugin installieren und verwenden. Docker-Plugins erweitern die Funktionalität von Docker. Sie können Funktionen wie Volumenverwaltung, Netzwerk-Treiber und vieles mehr bieten. Wir werden ein einfaches Volumen-Plugin namens rexray/s3fs installieren, das es ermöglicht, Docker-Volumes auf Amazon S3 zu speichern. Obwohl wir keinen vollständigen S3-Backend einrichten werden, zeigt die Installation des Plugins den Prozess auf.

Zunächst installieren wir das Plugin. Sie können ein Docker-Plugin mit dem Befehl docker plugin install installieren.

sudo docker plugin install rexray/s3fs --grant-all-permissions

Dieser Befehl installiert das rexray/s3fs-Plugin und gewährt es allen erforderlichen Berechtigungen. Die Option --grant-all-permissions wird hier aus Gründen der Einfachheit in dieser Lab-Umgebung verwendet. In einer Produktionsumgebung sollten Sie die erforderlichen Berechtigungen sorgfältig prüfen und nur die notwendigen gewähren.

Sie werden aufgefordert, die Installation und die Berechtigungen zu bestätigen. Geben Sie y ein und drücken Sie die Eingabetaste.

Plugin "rexray/s3fs" is requesting the following permissions:
 - network: host
 - mount: /dev/fuse
 - allow-sys-admin
 - allow-cap-sys-admin
 - allow-device /dev/fuse
 - allow-cfg-unix-groups
 - allow-runtime-privilege
 - allow-force-remove
Do you grant the plugin these permissions? [y/N] y

Nach der Bestätigung lädt Docker das Plugin herunter und installiert es. Dies kann je nach Ihrer Netzwerkverbindung einen Moment dauern.

Sobald die Installation abgeschlossen ist, können Sie überprüfen, ob das Plugin installiert und aktiviert ist, indem Sie den Befehl docker plugin ls verwenden.

sudo docker plugin ls

Sie sollten rexray/s3fs in der Liste sehen, wobei der Status ENABLED auf true gesetzt ist.

ID                  NAME                DESCRIPTION                                            ENABLED
xxxxxxxxxxxx        rexray/s3fs         REX-Ray S3FS Docker Volume Plugin                      true

Jetzt, da das Plugin installiert und aktiviert ist, können Sie es verwenden, um ein Volume zu erstellen. Obwohl wir die S3-Funktionalität ohne die Konfiguration von S3-Anmeldeinformationen nicht vollständig nutzen können, können wir dennoch ein Volume mit dem Plugin-Treiber erstellen.

sudo docker volume create --driver rexray/s3fs my-s3-volume

Dieser Befehl versucht, ein Volume namens my-s3-volume mit dem rexray/s3fs-Treiber zu erstellen. Da wir S3 nicht konfiguriert haben, kann dieser Befehl eine Warnung oder einen Fehler in Bezug auf die S3-Konnektivität anzeigen, aber das Volume-Objekt selbst wird von Docker erstellt.

Sie können die Volumes auflisten, um das neu erstellte Volume zu sehen.

sudo docker volume ls

Sie sollten my-s3-volume in der Liste sehen, wobei der DRIVER als rexray/s3fs angegeben ist.

DRIVER              VOLUME NAME
rexray/s3fs         my-s3-volume

Schließlich können Sie das Volume untersuchen, um weitere Details darüber zu erhalten.

sudo docker volume inspect my-s3-volume

Dieser Befehl gibt ein JSON-Objekt aus, das Informationen über das my-s3-volume enthält, einschließlich seines Treibers.

Deaktivieren des Plugins vor dem Upgrade

In diesem Schritt lernen Sie, wie Sie ein Docker-Plugin deaktivieren. Bevor Sie ein Docker-Plugin aktualisieren, ist es eine gute Praxis, es zunächst zu deaktivieren. Dies stellt sicher, dass das Plugin während des Upgrade-Prozesses von keinem Container oder Dienst aktiv genutzt wird, wodurch potenzielle Probleme vermieden werden.

Sie können ein Docker-Plugin mit dem Befehl docker plugin disable deaktivieren.

sudo docker plugin disable rexray/s3fs

Dieser Befehl deaktiviert das rexray/s3fs-Plugin. Wenn das Plugin derzeit von einem laufenden Container genutzt wird, verhindert Docker die Deaktivierung und gibt eine Fehlermeldung aus. In unserem Fall wird das Plugin von keinem laufenden Container aktiv genutzt, sodass es erfolgreich deaktiviert werden sollte.

Nach der Deaktivierung des Plugins können Sie seinen Status mit dem Befehl docker plugin ls überprüfen.

sudo docker plugin ls

Sie sollten jetzt rexray/s3fs in der Liste sehen, wobei der Status ENABLED auf false gesetzt ist.

ID                  NAME                DESCRIPTION                                            ENABLED
xxxxxxxxxxxx        rexray/s3fs         REX-Ray S3FS Docker Volume Plugin                      false

Das Deaktivieren des Plugins macht es inaktiv, es ist jedoch weiterhin auf Ihrem System installiert. Dieser Zustand ist erforderlich, bevor Sie mit einem Upgrade oder der Entfernung des Plugins fortfahren.

Aktualisieren des Docker-Plugins

In diesem Schritt lernen Sie, wie Sie ein Docker-Plugin aktualisieren. Das Aktualisieren eines Plugins umfasst die Installation einer neueren Version des Plugins. Da wir das Plugin im vorherigen Schritt bereits deaktiviert haben, können wir mit der Aktualisierung fortfahren.

Um ein Docker-Plugin zu aktualisieren, verwenden Sie erneut den Befehl docker plugin install und geben den Namen des Plugins an. Wenn Sie eine bestimmte Version wünschen, können Sie optional auch ein neues Tag angeben. Wenn Sie kein Tag angeben, lädt Docker die neueste Version herunter. Wir werden denselben Pluginnamen verwenden, und Docker wird den Aktualisierungsprozess übernehmen.

sudo docker plugin install rexray/s3fs --grant-all-permissions

Dieser Befehl versucht, das rexray/s3fs-Plugin erneut zu installieren. Da bereits eine Version installiert ist, erkennt Docker dies als Aktualisierungsversuch. Sie werden aufgefordert, die Aktualisierung und die Berechtigungen zu bestätigen, ähnlich wie bei der ersten Installation.

Plugin "rexray/s3fs" is requesting the following permissions:
 - network: host
 - mount: /dev/fuse
 - allow-sys-admin
 - allow-cap-sys-admin
 - allow-device /dev/fuse
 - allow-cfg-unix-groups
 - allow-runtime-privilege
 - allow-force-remove
Do you grant the plugin these permissions? [y/N] y

Geben Sie y ein und drücken Sie die Eingabetaste, um mit der Aktualisierung fortzufahren. Docker lädt die neue Version des Plugins herunter und ersetzt die vorhandene.

Nach Abschluss der Aktualisierung bleibt das Plugin in einem deaktivierten Zustand. Sie können dies mit dem Befehl docker plugin ls überprüfen.

sudo docker plugin ls

Sie sollten immer noch rexray/s3fs in der Liste sehen, wobei der Status ENABLED auf false gesetzt ist. Die ID könnte sich geändert haben, was darauf hinweist, dass eine neue Version installiert wurde.

ID                  NAME                DESCRIPTION                                            ENABLED
yyyyyyyyyyyy        rexray/s3fs         REX-Ray S3FS Docker Volume Plugin                      false

Das Aktualisieren des Plugins ersetzt die ausführbaren Dateien und Konfigurationsdateien des Plugins durch die neue Version. Es ist wichtig, das Plugin nach der Aktualisierung erneut zu aktivieren, damit es wieder verwendet werden kann.

Wiederaktivieren und Überprüfen des aktualisierten Plugins

In diesem Schritt werden Sie das aktualisierte Docker-Plugin wieder aktivieren und überprüfen, ob es ordnungsgemäß funktioniert. Nach der Aktualisierung eines Plugins bleibt es in einem deaktivierten Zustand. Sie müssen es explizit aktivieren, damit es von Docker genutzt werden kann.

Sie können ein Docker-Plugin mit dem Befehl docker plugin enable aktivieren.

sudo docker plugin enable rexray/s3fs

Dieser Befehl aktiviert das rexray/s3fs-Plugin. Wenn das Plugin erfolgreich startet, wird der Befehl ohne Ausgabe abgeschlossen. Wenn es Probleme beim Starten des Plugins gibt, sehen Sie möglicherweise eine Fehlermeldung.

Nach der Aktivierung des Plugins können Sie seinen Status mit dem Befehl docker plugin ls überprüfen.

sudo docker plugin ls

Sie sollten jetzt rexray/s3fs in der Liste sehen, wobei der Status ENABLED wieder auf true gesetzt ist.

ID                  NAME                DESCRIPTION                                            ENABLED
yyyyyyyyyyyy        rexray/s3fs         REX-Ray S3FS Docker Volume Plugin                      true

Um weiter zu überprüfen, ob das aktualisierte Plugin funktioniert, können Sie versuchen, ein weiteres Volume mit dem Plugindriver zu erstellen.

sudo docker volume create --driver rexray/s3fs my-s3-volume-2

Dieser Befehl erstellt ein neues Volume namens my-s3-volume-2 mit dem rexray/s3fs-Driver. Wenn das Plugin ordnungsgemäß funktioniert, sollte dieser Befehl erfolgreich sein (obwohl, wie zuvor, möglicherweise Warnungen in Bezug auf die S3-Verbindung angezeigt werden, wenn diese nicht konfiguriert ist).

Sie können die Volumes erneut auflisten, um das neue Volume zu sehen.

sudo docker volume ls

Sie sollten jetzt sowohl my-s3-volume als auch my-s3-volume-2 in der Liste sehen, wobei der DRIVER rexray/s3fs ist.

DRIVER              VOLUME NAME
rexray/s3fs         my-s3-volume
rexray/s3fs         my-s3-volume-2

Dies bestätigt, dass das aktualisierte Plugin aktiviert ist und zur Erstellung von Volumes verwendet werden kann.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie ein Docker-Plugin installieren und nutzen. Insbesondere haben Sie das rexray/s3fs-Volume-Plugin mit dem Befehl docker plugin install installiert und die erforderlichen Berechtigungen erteilt. Anschließend haben Sie die erfolgreiche Installation und den Aktivierungsstatus des Plugins mit docker plugin ls überprüft.

Nach der Installation haben Sie gelernt, dass es wichtig ist, das Plugin mit docker plugin disable zu deaktivieren, bevor Sie mit einer Aktualisierung fortfahren. Anschließend haben Sie die Plugin-Aktualisierung mit dem Befehl docker plugin upgrade durchgeführt und die neue Version angegeben. Schließlich haben Sie das aktualisierte Plugin mit docker plugin enable wieder aktiviert und seinen Status und seine Funktionalität überprüft, was den erfolgreichen Aktualisierungsprozess bestätigt.