Schritte zum Bereitstellen eines Spring Boot-Projekts mit Docker

Schritte zum Bereitstellen eines Spring Boot-Projekts mit Docker

Erstellen Sie ein einfaches Springboot-Projekt

1. Verwenden Sie Spring Boot 2.2.10-bezogene Abhängigkeiten in pom.xml

<übergeordnetes Element>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.2.10.RELEASE</version>
</übergeordnet>

2. Web- und Testabhängigkeiten hinzufügen

<Abhängigkeiten>
     <Abhängigkeit>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-web</artifactId>
    </Abhängigkeit>
 <Abhängigkeit>
  <groupId>org.springframework.boot</groupId>
  <artifactId>Spring-Boot-Starter-Test</artifactId>
  <scope>Test</scope>
 </Abhängigkeit>
</Abhängigkeiten>

3. Erstellen Sie einen DockerController mit einer hello()-Methode, die beim Zugriff Folgendes zurückgibt: hello,nihao

@RestController
öffentliche Klasse DockerController {
 
    @RequestMapping("/hallo")
    public String hallo() {
        returniere "hallo, nihao";
    }
}

4. Startklasse

@SpringBootAnwendung
öffentliche Klasse DockerApplication {

 öffentliche statische void main(String[] args) {
  SpringApplication.run(DockerApplication.class, args);
 }
}

Starten Sie das Projekt nach dem Hinzufügen. Besuchen Sie nach dem erfolgreichen Start http://localhost:8080/hello im Browser. Die Seite gibt „hello,nihao“ zurück, was darauf hinweist, dass das Spring Boot-Projekt normal konfiguriert ist.

Bereitstellen eines Spring Boot-Projekts mit Docker

1. Packen Sie das Projekt in ein JAR-Paket, kopieren Sie es auf den Server und testen Sie es

[root@jiangwang springbootDemo]# ls
demo-0.0.1-SNAPSHOT.jar Docker-Datei
[root@jiangwang springbootDemo]# java -jar demo-0.0.1-SNAPSHOT.jar 

  . ____ _ __ _ _
 /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/ ___)| |_)| | | | | | | (_| | ) ) ) )
  ' |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|================|___/=/_/_/_/
 :: Spring Boot :: (v2.2.10.RELEASE)

2021-03-18 14:49:18.241 INFO 12886 --- [main] com.example.demo.DemoApplication: DemoApplication v0.0.1-SNAPSHOT wird auf Jiangwang mit PID 12886 gestartet (/home/springbootDemo/demo-0.0.1-SNAPSHOT.jar von root in /home/springbootDemo gestartet)
2021-03-18 14:49:18.244 INFO 12886 --- [ main] com.example.demo.DemoApplication : Kein aktives Profil festgelegt, Rückgriff auf Standardprofile: Standard
2021-03-18 14:49:19.924 INFO 12886 --- [ main] osbwembedded.tomcat.TomcatWebServer : Tomcat initialisiert mit Port(s): 8080 (http)
2021-03-18 14:49:19.938 INFO 12886 --- [ main] o.apache.catalina.core.StandardService : Dienst wird gestartet [Tomcat]
2021-03-18 14:49:19.938 INFO 12886 --- [ main] org.apache.catalina.core.StandardEngine : Servlet-Engine wird gestartet: [Apache Tomcat/9.0.38]
2021-03-18 14:49:20.013 INFO 12886 --- [ main] oaccC[Tomcat].[localhost].[/] : Initialisierung des in Spring eingebetteten WebApplicationContext
2021-03-18 14:49:20.014 INFO 12886 --- [main] wscServletWebServerApplicationContext: Root WebApplicationContext: Initialisierung in 1657 ms abgeschlossen
2021-03-18 14:49:20.321 INFO 12886 --- [main] ossconcurrent.ThreadPoolTaskExecutor: ExecutorService „applicationTaskExecutor“ wird initialisiert.
2021-03-18 14:49:20.520 INFO 12886 --- [ main] osbwembedded.tomcat.TomcatWebServer : Tomcat gestartet auf Port(s): 8080 (http) mit Kontextpfad ''
2021-03-18 14:49:20.523 INFO 12886 --- [ main] com.example.demo.DemoApplication : DemoApplication in 2,899 Sekunden gestartet (JVM läuft seit 3,369)

2. Nachdem Sie das Spring Boot-Startprotokoll angezeigt haben, zeigt es, dass kein Problem mit der Umgebungskonfiguration vorliegt. Bearbeiten Sie die Dockerfile-Datei:

VON java:8
KOPIEREN *.jar /app.jar

CMD ["--server.port=8080"]

EXPOSE 8080

EINSTIEGSPUNKT ["java","-jar","/app.jar"]

3. Als nächstes verwenden wir Dockerfile, um das Image zu erstellen:

## Erstellen Sie das Image [root@jiangwang springbootDemo]# docker build -t springboot-demo .
Senden des Build-Kontexts an den Docker-Daemon 17,72 MB
Schritt 1/5: FROM java:8
 ---> d23bdf5b1b1b
Schritt 2/5: KOPIEREN *.jar /app.jar
 ---> f4d6aeabd3f0
Schritt 3/5: CMD ["--server.port=8080"]
 ---> Wird ausgeführt in a6311f7cf7b5
Zwischenbehälter entfernen a6311f7cf7b5
 ---> d8117b10cefa
Schritt 4/5: 8080 freilegen
 ---> Wird ausgeführt in ae180be637bb
Zwischenbehälter entfernen ae180be637bb
 ---> f16702c75ab6
Schritt 5/5: ENTRYPOINT ["java","-jar","/app.jar"]
 ---> Läuft in fafa00625666
Zwischenbehälter entnehmen fafa00625666
 ---> d4c3e225699d
Erfolgreich erstellt d4c3e225699d
Erfolgreich getaggt mit springboot-demo:latest

4. Führen Sie das Image aus:

# Führen Sie das Image aus [root@jiangwang springbootDemo]# docker run -d -p 39005:8080 --name my-springboot springboot-demo
7ac35852cb91cb10612cd28fdbe7c50c7c59df4cccf19b2f1d30dcabbfe501f4
[root@jiangwang springbootDemo]# docker ps
CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN
7ac35852cb91 springboot-demo "java -jar /app.jar …" vor 33 Sekunden Up 32 Sekunden 0.0.0.0:39005->8080/tcp my-springboot
[root@jiangwang springbootDemo]# curl localhost:39005/hallo
hallo, nihao [root@jiangwang springbootDemo]# 

5. Geben Sie die URL des externen Netzwerks in den Browser ein, um Folgendes zu besuchen:

Hier muss zuerst Ihr externer Netzwerkport 39005 geöffnet werden. Sie können zu den Sicherheitsgruppeneinstellungen gehen

Dies zeigt, dass das Spring Boot-Projekt erfolgreich mit Docker bereitgestellt wurde!

Damit ist dieser Artikel über die Implementierungsschritte zum Bereitstellen von Spring Boot-Projekten mit Docker abgeschlossen. Weitere Informationen zum Bereitstellen von Spring Boot mit Docker 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 stellen Sie ein SpringBoot-Projekt mit Dockerfile bereit
  • Beispiel für die Bereitstellung einer Spring Boot-Anwendung mit Docker
  • So stellen Sie ein SpringBoot-Projekt mit Docker bereit
  • So stellen Sie eine Spring-Boot-Maven-Anwendung mit Docker bereit
  • Stellen Sie das Springboot-Projekt basierend auf der Idee im Docker bereit
  • SpringBoot-Projekt in Docker auf dem Mac bereitstellen (Demo)
  • So stellen Sie Microservices mit Spring Boot und Docker bereit

<<:  Beispiel für das Hinzufügen eines Musikvideos zu einer HTML-Seite

>>:  Regenbogen-Button-Stil erstellt mit CSS3

Artikel empfehlen

Grundlegende Verwendung des Befehls wget unter Linux

Inhaltsverzeichnis Vorwort 1. Laden Sie eine einz...

Verwenden Sie Javascript, um eine dynamische QQ-Registrierungsseite zu erstellen

Inhaltsverzeichnis 1. Einleitung 1. Grundlayout 2...

19 MySQL-Optimierungsmethoden im Datenbankmanagement

Nach der MySQL-Datenbankoptimierung kann nicht nu...

Detaillierte Erklärung des Rewrite-Moduls von Nginx

Das Umschreibmodul ist das Modul ngx_http_rewrite...

Tutorial zum Verbinden und Verwenden von MySQL 8.0 im Maven-Projekt von IDEA

Schauen wir uns zunächst meine grundlegende Entwi...

Detaillierte Erläuterung der MySQL-Benutzerrechteverwaltung

Inhaltsverzeichnis Vorwort: 1. Einführung in die ...

Was ist ein MySQL-Tablespace?

Das Thema, das ich heute mit Ihnen teilen möchte,...

So verwenden Sie den Linux-Befehl seq

1. Befehlseinführung Mit dem Befehl seq (Sequence...