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
Inhaltsverzeichnis 1. Verwenden Sie den Befehl „r...
Konfigurieren Sie die Git-Umgebung in Docker Bei ...
Verwenden Sie self:: oder __CLASS__, um eine stat...
Bei der Entwicklung eines Projekts stößt man häuf...
Szenario Angenommen, es gibt 10 Anfragen, aber di...
Bevor ich anfange, möchte ich betonen, dass proce...
Erster Blick auf die Wirkung: Wenn die Maus über ...
Erste: Code kopieren Der Code lautet wie folgt: &l...
Wie oben gezeigt ist die Navigation oben fixiert ...
1. Feste Breite + adaptiv Erwarteter Effekt: fest...
Normalerweise besteht das Ziel beim Erstellen ein...
Code kopieren Der Code lautet wie folgt: <HTML...
Dieser Artikel erläutert anhand von Beispielen di...
Wichtige Daten müssen gesichert werden, und zwar ...
Tomcat ist eine auf Java basierende Webserversoft...