1. Einführung in das Docker-Maven-PluginIn unserem kontinuierlichen Integrationsprozess verwendet die Projektentwicklung im Allgemeinen Maven zum Kompilieren und Verpacken und anschließenden Generieren von Bildern. Indem wir die Bilder online stellen, können wir die Online-Effizienz erheblich verbessern und gleichzeitig die Kapazität schnell und dynamisch erweitern und schnell zurücksetzen, was wirklich praktisch ist. Das Plugin „Docker-Maven-Plugin“ soll uns dabei helfen, automatisch Bilder zu generieren und sie durch einfache Konfiguration in Maven-Projekten in das Lager zu übertragen. **Wirkung: Beim Kompilieren eines Projekts kann automatisch ein Docker-Image generiert und in ein Remote-Repository übertragen werden. Sie müssen es nur in der Maven-Konfigurationsdatei pom.xml** richtig konfigurieren. Beispiel 1 (automatisches Generieren eines Docker-Images während der Kompilierung):1. Maven-Konfiguration: <Plugin> <groupId>com.spotify</groupId> <artifactId>Docker-Maven-Plugin</artifactId> <version>1.0.0</version> <Konfiguration> <!--Beachten Sie, dass der Bildname dem regulären [a-z0-9-_.] entsprechen muss, da sonst der Build nicht erfolgreich ist--> <imageName>meinServer:v1</imageName> <!-- Das Verzeichnis der Docker-Datei ist angegeben, daher müssen Sie ein Docker-Verzeichnis unter src/main des Projekts erstellen und die Docker-Datei in seinem Verzeichnis konfigurieren--> <dockerDirectory>${project.basedir}/src/main/resources/docker</dockerDirectory> <skipDockerBuild>falsch</skipDockerBuild> <!-- Der Inhalt der Ressourcen wird in das DockerDirectory (also in den Build-Kontext) kopiert --> <Ressourcen> <Ressource> <Zielpfad>/</Zielpfad> <Verzeichnis>${project.build.directory}</Verzeichnis> <include>${project.build.finalName}.jar</include> </Ressource> </Ressourcen> </Konfiguration> </plugin> 2. Erstellen Sie dann im Projektverzeichnis src\main\resources\docker (dem oben konfigurierten DockerDirectory-Verzeichnis) eine Datei mit dem Namen Dockerfile und folgendem Inhalt: VON java:8 MAINTAINER blau ADD mydocker-0.0.1-SNAPSHOT.jar mydocker.jar EINSTIEGSPUNKT ["java", "-jar", "/mydocker.jar"] 3. Legen Sie Systemumgebungsvariablen fest, um den Host und den Port des Docker-Daemons anzugeben, der verbunden werden muss. Wie bereits erwähnt, ist Docker eine C/S-Architektur, das Docker-Maven-Plugin spielt die Rolle des Clients und der Server benötigt Umgebungsvariablen, um Folgendes anzugeben: 4. Führen Sie mvn clean install docker:build aus. Nachdem das Projekt kompiliert wurde, wird das Image automatisch erstellt. Führen Sie docker images aus, um zu prüfen, ob das Image vorhanden ist: Beispiel 2 (Pushen des Images ins Warehouse, basierend auf Beispiel 1):1. Öffnen Sie die Maven-Konfigurationsdatei setting.xml und fügen Sie die Warehouse-Kontoinformationen hinzu: <Server> <Server> <id>Docker-Hub</id> <Benutzername>blueiii</Benutzername> <Passwort>xxxx</Passwort> <Konfiguration> <E-Mail>[email protected]</E-Mail> </Konfiguration> </server> </server> 2. Ändern Sie die Datei pom.xml. Der Bildname muss mit dem Warehouse-Pfad übereinstimmen: <imageName>blueiii/mydocker:v1</imageName> 3. Ändern Sie die Datei pom.xml und fügen Sie die folgende Konfiguration hinzu <pushImage>wahr</pushImage> <serverId>Docker-Hub</serverId> <registryUrl>https://hub.docker.com/</registryUrl> 4. Führen Sie außerdem mvn clean install docker:build aus, um das Image automatisch zu erstellen und es auf Docker Hub hochzuladen: Dies ist das Ende dieses Artikels über die Verwendung des Docker-Maven-Plugins zur Automatisierung der Bereitstellung. Weitere Informationen zur automatisierten Bereitstellung des Docker-Maven-Plugins finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: MYSQL METADATA LOCK (MDL LOCK) Theorie und Sperrtyptest
>>: So lösen Sie das Problem der Linksausrichtung der letzten Zeile im Flex-Layout „space-between“
Inhaltsverzeichnis 1. Was ist ein Hook? 2. Warum ...
Vorwort Während des Schreibens des Codes werden w...
// Ich habe einen ganzen Nachmittag für die Insta...
In diesem Artikelbeispiel wird der spezifische Co...
Inhaltsverzeichnis MySQL-Protokolldateien binlog ...
Primitive Werte -> primitive Typen Number Stri...
Docker-Installation Über die Installation auf ein...
1. Führen Sie Schriftarten aus, öffnen Sie den Sc...
Code kopieren Der Code lautet wie folgt: <Obje...
Inhaltsverzeichnis einführen Beispiel Zusammenfas...
Apache Arrow ist ein beliebtes Format, das von ve...
Was ist ein Primärschlüssel? Ein Primärschlüssel ...
In diesem Artikel wird der spezifische JavaScript...
Ich habe zuvor die Verwendung des asynchronen Lad...
1. Problembeschreibung: MysqlERROR1698 (28000)-Lö...