Das Spring-Boot-Projekt verwendet Jenkins, um ein Docker-Image zu erstellen, es in das Harbor-Repository zu übertragen, den Container zu starten und das Image dann in den lokal ausgeführten Container zu ziehen. Docker-DateiSpeicherort: im Stammverzeichnis, auf derselben Ebene wie src VON java:8 # Autor: MAINTAINER zhaoyc VOLUMEN /tmp #ARG JAR_FILE #Fügen Sie das JAR-Paket dem Container hinzu und benennen Sie es in app.jar um ADD Ziel/*.jar app.jar Führen Sie den Befehl bash -c 'touch /app.jar' aus. ENV TZ=Asien/Shanghai #RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone ENTDECKEN 81 #CMD ["-jar", "/app.jar"] "nohup" "&" EINSTIEGSPUNKT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] pom.xmlUm die Maven-Versionsnummer als 1.4.2 anzugeben, wurden andere Versionen nicht getestet, sonst kann die Hauptklasse nicht gefunden werden <Plugins> <!-- Start-Plug-In für Mavn-JAR-Pakete --> <Plugin> <groupId>org.springframework.boot</groupId> <artifactId>Spring-Boot-Maven-Plugin</artifactId> <version>1.4.2.RELEASE</version> </plugin> </plugins> Jenkins-Konfiguration Systemeinstellungen-Konfiguration Docker – Docker-Plugin muss installiert werden Erstellen Sie einen neuen Maven-Projektkonfigurationsparameter-Build Konfiguration des Git-Repository für Projekte MVN Build Buile-Konfiguration Erstellen Sie das Docker-Image und übertragen Sie es in die Repository-Konfiguration Führen Sie das Skript aus, nachdem Sie es in das Repository gepusht haben. #!/bin/bash #IMAGE=${Moduldateiname} #TAG=${Tag} BILD=$1 TAG=$2 PULL_IMAGE=192.168.1.100:81/Projekt/${IMAGE}:${TAG} # Subtraktion berechnen und mit 0 vor dem Komma ausgeben, also 0,3-0,1=0,2 CURRENT_IAMGE=`echo "$TAG - 0.1" | bc | awk '{printf "%.1f", $0}'` echo '================Anmeldung beim Harbor-Lager beginnen=================' Docker-Anmeldung http://192.168.1.100:81 -u admin -p Harbor12345 wenn [ $? -eq 0 ]; dann echo '================Anmeldung erfolgreich==================' anders echo '================Anmeldung fehlgeschlagen==================' Rückgabe 1 fi echo '=================Bild abrufen beginnen=================' Docker-Pull ${PULL_IMAGE} echo '================Ende des Bildabrufs=================' # Containervorgang aktualisieren echo '================Ausführen des Images beenden=================' Docker-Stopp ${IMAGE}_${CURRENT_IAMGE} echo "10 Sekunden warten" Schlaf 10 echo '================Spiegel starten=================' #wenn [ ${IMAGE} == "java-demo" ]; dann # docker run -d --name ${IMAGE}_${TAG} -p 9001:9001 ${PULL_IMAGE} #elif [ ${IMAGE} == "spring-cloud-eureka-client-demo" ]; dann # docker run -d --name ${IMAGE}_${TAG} -p 9012:9012 ${PULL_IMAGE} #fi docker run -d --name ${IMAGE}_${TAG} -p 9001:9001 ${PULL_IMAGE} wenn [ $? -eq 0 ]; dann echo '================Spiegelung erfolgreich gestartet=================' anders echo '=================Start des Spiegels fehlgeschlagen=================' Rückgabe 1 fi Dies ist das Ende dieses Artikels darüber, wie Jenkins Docker-Images erstellt und sie in das Harbor-Repository überträgt. Weitere Informationen dazu, wie Jenkins Docker-Images erstellt, 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:
|
<<: Reines CSS, um nach Auswahl des Produkts das Zeichen √ in der unteren rechten Ecke anzuzeigen
>>: 12 nützliche Array-Tricks in JavaScript
Die Verwendung von „Computed“ in vue3. Da vue3 mi...
Nach der Installation der neuesten Version 8.0.11...
Derzeit haben die Verantwortlichen von Layui die ...
Inhaltsverzeichnis 1. Docker installieren 2. Inst...
Oftmals erwarten wir, dass das Abfrageergebnis hö...
Inhaltsverzeichnis Vorwort Erstellen Sie ein Vite...
Kurz zusammengefasst: Browserkompatibilitätsprobl...
Durch die Verwendung von JS im Webdesign können vi...
Inhaltsverzeichnis VMware BurpSuite 1. Virtuelles...
Hier sind zwei Terminal-Split-Screen-Tools: scree...
1. Anforderungsbeschreibung Zeigt das Löschsymbol...
Inhaltsverzeichnis 1. Installation und Betrieb vo...
Führen Sie die folgenden Vorgänge im Ubuntu-Befeh...
<br />Das Internet verändert sich ständig un...
Inhaltsverzeichnis Erfordern Implementierungscode...