Einführung
In diesem Lab lernen Sie, wie Sie mithilfe des Befehls docker plugin create ein Docker-Plugin erstellen. Dieser Prozess umfasst die Vorbereitung der erforderlichen Verzeichnisstruktur und der Konfigurationsdatei für Ihr Plugin und anschließend die Verwendung des Befehls, um das Plugin aus diesen Komponenten zu erstellen.
Das Lab führt Sie durch die Vorbereitung des Plugin-Datenverzeichnisses, was das Erstellen einer config.json-Datei zur Definition der Eigenschaften und Schnittstelle des Plugins umfasst. Danach führen Sie den Befehl docker plugin create aus, um das Plugin auf der Grundlage der vorbereiteten Daten zu erstellen. Abschließend überprüfen Sie, ob das Plugin erfolgreich erstellt wurde und in Ihrer Docker-Umgebung verfügbar ist.
Bereiten Sie das Plugin-Datenverzeichnis vor
In diesem Schritt bereiten wir die für unser Docker-Plugin erforderliche Verzeichnisstruktur vor. Ein Docker-Plugin benötigt ein bestimmtes Verzeichnislayout, um korrekt zu funktionieren. Dieses Verzeichnis wird die Konfiguration des Plugins und möglicherweise andere erforderliche Dateien enthalten.
Zunächst navigieren Sie in Ihr Projektverzeichnis.
cd ~/project
Nun erstellen Sie ein Verzeichnis für die Plugin-Daten. Wir nennen es my-plugin-data.
mkdir my-plugin-data
Innerhalb des my-plugin-data-Verzeichnisses müssen wir eine Konfigurationsdatei namens config.json erstellen. Diese Datei wird die Konfigurationsdetails des Plugins enthalten.
cd my-plugin-data
nano config.json
Fügen Sie den folgenden Inhalt zur config.json-Datei hinzu. Dies ist eine grundlegende Konfiguration, die den Typ und die Beschreibung des Plugins angibt.
{
"Description": "My first Docker plugin",
"Types": [
{
"Name": "volume",
"Description": "A simple volume plugin"
}
],
"Interface": {
"Types": ["docker.volumedriver/1.0"],
"Socket": "my-plugin.sock"
},
"Entrypoint": ["/usr/local/bin/my-plugin"]
}
Lassen Sie uns die config.json-Datei analysieren:
Description: Eine menschenlesbare Beschreibung des Plugins.Types: Gibt die von dem Plugin angebotenen Typen an. In diesem Fall handelt es sich um einvolume-Plugin.Interface: Definiert die Schnittstelle des Plugins.Types: Gibt den Schnittstellentyp an,docker.volumedriver/1.0für einen Volume-Treiber.Socket: Der Name des Unix-Domain-Sockets, auf dem das Plugin lauscht. Docker wird über diesen Socket mit dem Plugin kommunizieren.
Entrypoint: Der Befehl, den Docker ausführt, wenn das Plugin aktiviert wird. Dies sollte der Pfad zur ausführbaren Datei Ihres Plugins im Root-Dateisystem des Plugins sein.
Speichern Sie die Datei und verlassen Sie den nano-Editor, indem Sie Strg + X, dann Y und Enter drücken.
Navigieren Sie schließlich zurück in das Projektstammverzeichnis.
cd ~/project
Sie haben nun erfolgreich die grundlegende Verzeichnisstruktur und die Konfigurationsdatei für Ihr Docker-Plugin erstellt.
Erstellen Sie das Plugin mit docker plugin create
In diesem Schritt verwenden wir den Befehl docker plugin create, um das Plugin auf der Grundlage des Verzeichnisses zu erstellen, das wir im vorherigen Schritt vorbereitet haben. Der Befehl docker plugin create nimmt den Namen des Plugins und den Pfad zum Plugin-Datenverzeichnis als Argumente.
Die Befehlssyntax lautet docker plugin create <plugin-name> <plugin-data-directory>.
Wir werden unser Plugin my-plugin nennen und das von uns erstellte my-plugin-data-Verzeichnis verwenden. Stellen Sie sicher, dass Sie sich im ~/project-Verzeichnis befinden.
cd ~/project
sudo docker plugin create my-plugin ./my-plugin-data
Sie sollten eine Ausgabe sehen, die darauf hinweist, dass das Plugin erstellt wird. Bei Erfolg wird der Befehl ohne Fehler abgeschlossen.
Der Befehl docker plugin create liest die config.json-Datei aus dem angegebenen Verzeichnis und registriert das Plugin beim Docker-Daemon. Zu diesem Zeitpunkt ist das Plugin erstellt, aber noch nicht aktiviert.
Überprüfen Sie das erstellte Plugin
In diesem Schritt überprüfen wir, ob das Plugin erfolgreich erstellt wurde und von Docker aufgelistet wird. Wir können den Befehl docker plugin ls verwenden, um alle verfügbaren Plugins aufzulisten.
Stellen Sie sicher, dass Sie sich im ~/project-Verzeichnis befinden.
cd ~/project
sudo docker plugin ls
Die Ausgabe dieses Befehls sollte eine Liste von Plugins anzeigen. Sie sollten einen Eintrag für my-plugin mit dem Status disabled sehen. Dies bestätigt, dass das Plugin bei Docker registriert wurde, aber noch nicht aktiv ist.
Die Ausgabe sieht in etwa so aus (die ID wird unterschiedlich sein):
ID NAME TAG DESCRIPTION ENABLED
a1b2c3d4e5f6 my-plugin My first Docker plugin false
Die Spalte ENABLED zeigt false an, was bedeutet, dass das Plugin derzeit deaktiviert ist. Um das Plugin zu verwenden, müssten Sie es mit docker plugin enable aktivieren. Da dies jedoch nur eine Demonstration der Erstellung der Plugin-Struktur ist, werden wir es in diesem Lab nicht aktivieren.
Sie haben nun erfolgreich Ihr Docker-Plugin erstellt und seine Existenz überprüft.
Zusammenfassung
In diesem Lab haben wir gelernt, wie man die erforderliche Verzeichnisstruktur und Konfigurationsdatei für ein Docker-Plugin vorbereitet. Dies beinhaltete die Erstellung eines dedizierten Verzeichnisses für die Plugin-Daten und die Definition der Eigenschaften des Plugins, wie z. B. seine Beschreibung, Typ, Schnittstelle und Einstiegspunkt, in einer config.json-Datei. Dieser grundlegende Schritt ist entscheidend für die Definition, wie Docker mit dem Plugin interagiert und es verwaltet.



