Automatische Bereitstellung von in Java entwickelten Webanwendungen mit Jenkins [Spring Boot App Edition]

Um CI / CD zu üben, habe ich Jenkins so eingerichtet, dass Artefakte generiert und auf dem Anwendungsserver bereitgestellt werden.

Der Quellcode und die Serverkonstruktion werden in dieser [Vorbereitung] beschrieben (https://qiita.com/kazokmr/items/850c4cc86d6eac8fe72f). Wenn Sie automatisch auf dem Tomacat-Server bereitstellen möchten, lesen Sie Tomcat App.

Auftragsfluss von Jenkins [^ 1]

  1. Überprüfen Sie den Quellcode
  2. Führen Sie den Build auf Maven aus und geben Sie die JAR-Datei aus
  3. Übertragen Sie die JAR-Datei auf den JVM-Server
  4. Führen Sie die JAR-Datei aus

Überprüfen Sie den Quellcode

Wählen Sie Git unter ** Quellcode verwalten ** aus und überprüfen Sie das im Vorbereitungsabschnitt erstellte Github-Repository. [^ 2] Geben Sie für die Verzweigung * / master an.

Führen Sie Build on Maven aus und geben Sie die JAR-Datei aus

Wählen Sie ** Shell ausführen ** und führen Sie es mit dem Befehl . / Mvnw aus.

Der Build verwendet Maven, wird jedoch auf dem im Repository enthaltenen Maven Wrapper anstelle der Mave-Task ausgeführt. Da das Repository zwei Projekte enthält, verschiebe ich das aktuelle Verzeichnis vor der Ausführung in WebSpringBoot.

cd WebSpringBoot
./mvnw clean package

Wenn Sie Maven ausführen, wird in / WebSpringBoot / target die Datei web-spring-boot.jar generiert.

Übertragen Sie die JAR-Datei auf den JVM-Server

Wählen Sie ** Shell ausführen **, SSH auf dem JVM-Server aus und platzieren Sie die generierten Artefakte: web-spring-boot.jar. Stellen Sie außerdem aus den folgenden Gründen den vollständigen Zugriff auf die übertragene JAR-Datei (rwx) sicher.

#Übertragen Sie die JAR-Datei mit dem SCP-Befehl von Jankins auf den JVM-Server
scp -i ~/.ssh/id_rsa WebSpringBoot/target/web-spring-boot.jar [email protected]:/var/jvm
#Ausführungsberechtigung erteilen
ssh -i ~/.ssh/id_rsa [email protected] sudo chmod 700 /var/jvm/web-spring-boot.jar

Führen Sie die JAR-Datei aus

Wählen Sie ** Run Shell ** to SSH auf dem JVM-Server aus und starten Sie den Anwendungsdienst neu. ssh -i ~/.ssh/id_rsa [email protected] sudo systemctl restart app

Wenn die Jenkins-Jobausführung erfolgreich ist, können Sie die Anwendungsausführung unter der folgenden URL überprüfen. http://192.168.33.20:8080/

Bildschirm "Einstellungen erstellen"

image.png

Referenz

Installing Spring Boot Applications(from Spring Boot Reference) Spring Boot Reference Guide

[^ 1]: Dieses Mal wollte ich durch Ausführen von Befehlen erstellen und bereitstellen, daher habe ich die Aufgabe ** Shell Execution ** verwendet.

[^ 2]: Dieses Repository enthält zwei Maven-Projekte, ** WebSpringMvc ** für Krieg und ** WebSpringBoot ** für JAR. Dieses Mal werden wir / WebSpringBoot verwenden.

[^ 3]: Um das JAR ausführbar zu machen, setzen Sie die ausführbare Einstellung des Spring-Boot-Maven-Plugins auf true.

Recommended Posts

Automatische Bereitstellung von in Java entwickelten Webanwendungen mit Jenkins [Spring Boot App Edition]
Automatische Bereitstellung von in Java entwickelten Webanwendungen mit Jenkins [Vorbereitung]
Automatische Bereitstellung von in Java entwickelten Webanwendungen mit Jenkins [Tomcat App Edition]
Java-Anfänger haben versucht, mit Spring Boot eine einfache Webanwendung zu erstellen
Erstellen Sie eine Spring Boot-Anwendung mit IntelliJ IDEA
Java-Tipps - Erstellen Sie mit Gradle ein Spring Boot-Projekt
Stellen Sie die Spring Boot-Anwendung für Elastic Beanstalk bereit
Melden Sie sich bei Spring Boot-Webanwendungen auf der Microsoft ID-Plattform an
[Spring Boot] Erstellung von Webanwendungen
CICS-Java-Anwendung ausführen- (4) Spring Boot-App
Beispiel einer Webanwendung, die mit Spring Boot 1.5 mehrere Datenbanken verwaltet
Einführung von Spring Boot2, einem Java-Framework für die Webentwicklung (für Anfänger)
Spring Boot-Anwendungsentwicklung in Eclipse
Implementieren Sie die Spring Boot-Anwendung in Gradle
Erstellen wir eine Buchverwaltungs-Webanwendung mit Spring Boot part1
Lassen Sie uns mit Spring Boot part3 eine Webanwendung für die Buchverwaltung erstellen
[Java] Abrufen von Daten aus der Datenbank mithilfe des Singleton-Dienstes in Spring (Boot)
Lassen Sie uns mit Spring Boot part2 eine Webanwendung für die Buchverwaltung erstellen
Wird in Spring Boot mithilfe einer Bean-Definitionsdatei mit dem Namen application.xml angepasst
ERRORCODE = -4471 tritt in einer Java-Anwendung auf, die Db2 verwendet.
Erstellen Sie mit IntelliJ ein Java Spring Boot-Projekt
Starten Sie die Entwicklung von Webanwendungen mit Spring Boot
Stellen Sie eine Java-Web-App für Heroku bereit
Rolle von JSP in Webanwendungen [Java]
Führen Sie die WEB-Anwendung mit Spring Boot + Thymeleaf aus
Eine Geschichte über ein in Java geschriebenes Spring Boot-Projekt, das Kotlin unterstützt
WAR die WEB-Anwendung per Spring Boot und stellen Sie sie auf dem Tomcat-Server bereit
[Java] Stellen Sie eine mit Eclipse + Maven + Ontology mit Heroku erstellte Webanwendung bereit
Ich habe versucht, mit AI "A3RT" eine Talk-App in Java zu erstellen.
SameSite-Cookie im Spring Boot (Spring Web MVC + Tomcat)
Stellen Sie in der IntelliJ IDEA-Umgebung entwickelte Java-Anwendungen für Alibaba Cloud ECS-Instanzen bereit
Führen Sie ein Spring Boot-Projekt mit VS-Code aus
So zeigen Sie eine Webseite in Java an
[AWS] So stellen Sie eine mit Rails 6 erstellte Webanwendung mithilfe von CircleCI (1) -Vorbereitung automatisch für ECR / ECS bereit [Containerbereitstellung]
Lassen Sie uns mit Java ein supereinfaches Webframework erstellen
So fügen Sie in Spring Boot einen Klassenpfad hinzu
Ich habe versucht, eine Webanwendung voller Fehler mit Spring Boot zu klonen
Erstellen Sie einen Web-API-Server mit Spring Boot
CSRF-Gegenmaßnahmenrichtlinie und Implementierungsbeispiel in einer REST-Anwendung unter Verwendung von "Spring Boot" + "EXT JS"
[Für Anfänger] Bis zum Erstellen einer Webanwendungsentwicklungsumgebung mit Java unter Mac OS
Versuchen Sie, OpenID Connect mit Keycloak (Spring Boot-Anwendung) zu verwenden.
[JUnit 5-kompatibel] Schreiben Sie einen Test mit JUnit 5 mit Spring Boot 2.2, 2.3
[Einführung in Spring Boot] Senden Sie ein Formular mit thymeleaf
Testen Sie die Klasse mit Feldinjektion im Spring-Boot-Test, ohne den Spring-Container zu verwenden
So konvertieren Sie A in a und a in A mit logischem Produkt und Summe in Java
Erstellen Sie eine JAVA WEB App und probieren Sie OMC APM aus
Spring Boot 2.3 Verfügbarkeit von Anwendungen
Stellen Sie lokal entwickelte Java-Anwendungen mit Cloud Toolkit auf Alibaba Cloud ECS-Instanzen bereit
Erstellen wir eine Taschenrechner-App mit Java ~ Zeigen Sie das Anwendungsfenster an
Erstellung einer Webanwendungsentwicklungsumgebung in Java (für unerfahrene Personen)
Stellen Sie Spring Boot-Anwendungen für Heroku bereit, ohne die Heroku-CLI zu verwenden
Die erste WEB-Anwendung mit Spring Boot-Making a Pomodoro Timer-
Stellen Sie die von Spring Boot erstellte Anwendung für Heroku (öffentlich) bereit ②
Aufrufen und Verwenden der API in Java (Spring Boot)
Stellen Sie die von Spring Boot erstellte Anwendung für Heroku (öffentlich) bereit ①
Abrufen von Fehlerinformationen mithilfe von DefaultErrorAttributes und ErrorAttributeOptions in Spring Boot 2.3
So stellen Sie eine Java-Anwendung in Alibaba Cloud EDAS in Eclipse bereit