Jenkins erstellt Docker-Images und überträgt sie in das Harbor-Warehouse.

Jenkins erstellt Docker-Images und überträgt sie in das Harbor-Warehouse.

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-Datei

Speicherort: 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.xml

Um 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

Bildbeschreibung hier einfügen

Erstellen Sie einen neuen Maven-Projektkonfigurationsparameter-Build

Bildbeschreibung hier einfügen

Konfiguration des Git-Repository für Projekte

Bildbeschreibung hier einfügen

MVN Build Buile-Konfiguration

Bildbeschreibung hier einfügen

Erstellen Sie das Docker-Image und übertragen Sie es in die Repository-Konfiguration

Bildbeschreibung hier einfügen

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:
  • So verwenden Sie Docker buildx, um plattformübergreifende Images zu erstellen und sie in private Repositories zu übertragen
  • Verwenden Sie Docker, um ein Git-Image mithilfe des Klon-Repositorys zu erstellen
  • So verwenden Sie ein Domestic Image Warehouse für Docker
  • docker-maven-plugin verpackt das Image und lädt es in ein privates Warehouse hoch
  • So verwenden Sie das Docker-Image-Repository
  • Alibaba Cloud-Bereitstellungsschritte für das private Docker-Image-Repository
  • Docker-Container-Praxis-Image-Warehouse

<<:  Reines CSS, um nach Auswahl des Produkts das Zeichen √ in der unteren rechten Ecke anzuzeigen

>>:  12 nützliche Array-Tricks in JavaScript

Artikel empfehlen

Zusammenfassung neuer Anwendungsbeispiele für Calculated in Vue3

Die Verwendung von „Computed“ in vue3. Da vue3 mi...

Layim in Javascript, um Freunde und Gruppen zu finden

Derzeit haben die Verantwortlichen von Layui die ...

MySQL Slow Query-Optimierung: Die Vorteile von Limit aus Theorie und Praxis

Oftmals erwarten wir, dass das Abfrageergebnis hö...

So erstellen Sie ein React-Projekt mit Vite

Inhaltsverzeichnis Vorwort Erstellen Sie ein Vite...

Fünf Lösungen für Cross-Browser-Probleme (Zusammenfassung)

Kurz zusammengefasst: Browserkompatibilitätsprobl...

Die vernachlässigten Spezialeffekte von META-Tags (Seitenübergangseffekte)

Durch die Verwendung von JS im Webdesign können vi...

Tutorial zur Installation von VMware, Nmap und Burpsuite

Inhaltsverzeichnis VMware BurpSuite 1. Virtuelles...

Zwei Tools zum Teilen des Bildschirms im Linux-Befehlszeilenterminal

Hier sind zwei Terminal-Split-Screen-Tools: scree...

So installieren Sie Django in einer virtuellen Umgebung unter Ubuntu

Führen Sie die folgenden Vorgänge im Ubuntu-Befeh...

Zehn Erfahrungen im Webdesign im Jahr 2008

<br />Das Internet verändert sich ständig un...

So zeigen Sie den Prozentsatz und die ersten paar Prozent in MySQL an

Inhaltsverzeichnis Erfordern Implementierungscode...