Erfahren Sie, wie Sie mit dem Docker-Maven-Plugin die Bereitstellung automatisieren

Erfahren Sie, wie Sie mit dem Docker-Maven-Plugin die Bereitstellung automatisieren

1. Einführung in das Docker-Maven-Plugin

In 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:

Bildbeschreibung hier einfügen

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:

Bildbeschreibung hier einfügen

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:

Bildbeschreibung hier einfügen

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:
  • Das Docker-Maven-Plugin-Plugin kann das entsprechende JAR-Paket nicht abrufen
  • Zusammenfassung der Dockerfile-Maven-Plugin-Nutzungsanleitung
  • Detaillierte Verwendung des Docker-Maven-Plugins
  • Verwendung des Maven-Plugins docker-maven-plugin
  • minimalistisches Dockerfile-Maven-Plugin-Tutorial (empfohlen)

<<:  MYSQL METADATA LOCK (MDL LOCK) Theorie und Sperrtyptest

>>:  So lösen Sie das Problem der Linksausrichtung der letzten Zeile im Flex-Layout „space-between“

Artikel empfehlen

Vue3-Zeitstempelkonvertierung (ohne Verwendung von Filtern)

Wenn vue2 Zeitstempel konvertiert, verwendet es i...

So installieren Sie mehrere mysql5.7.19 (tar.gz)-Dateien unter Linux

Informationen zur ersten Installation der MySQL-5...

Detaillierte Schritte zum Debuggen von VUE-Projekten in IDEA

Um JS-Code zu debuggen, müssen Sie jedes Mal eine...

Implementierung einer Bildfragmentierungsladefunktion basierend auf HTML-Code

Heute werden wir einen fragmentierten Bildladeeff...

Kapitel zur Entwicklung von WeChat-Applets: Fallstricke

Vor kurzem habe ich an der Entwicklung des ersten...

Details zur Verwendung von Klassenstilen in Vue

Inhaltsverzeichnis 1. Boolesche Werte 2. Ausdruck...

Eine vollständige Liste gängiger Linux-Systembefehle für Anfänger

Das Erlernen von Linux-Befehlen stellt für die me...

Detaillierte Erklärung des Vue3-Sandbox-Mechanismus

Inhaltsverzeichnis Vorwort Browser kompilierte Ve...