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

So verwenden Sie Makros in JavaScript

In Sprachen werden häufig Makros zur Implementier...

...

Detaillierte Erklärung des Ungültigkeitsprozesses des VUE-Tokens

Inhaltsverzeichnis Ziel Gedankenanalyse Code-Land...

So erstellen Sie einen untergeordneten Prozess in nodejs

Inhaltsverzeichnis Einführung Untergeordneter Pro...

So stellen Sie Tencent Cloud Server von Grund auf bereit

Da dies mein erster Beitrag ist, weisen Sie mich ...

JSONP-domänenübergreifende Simulation der Baidu-Suche

Inhaltsverzeichnis 1. Was ist JSONP 2. JSONP-Cros...

Stabile Version von MySQL 8.0.18 veröffentlicht! Hash Join ist wie erwartet da

Die stabile Version (GA) von MySQL 8.0.18 wurde g...

Automatisches Laden des Kernelmodul-Overlayfs-Vorgangs beim CentOS-Start

Um Kernelmodule in CentOS automatisch zu laden, k...

Vue.js implementiert eine einfache Timerfunktion

In diesem Artikelbeispiel wird der spezifische Co...

So überwachen Sie Array-Änderungen in JavaScript

Vorwort Als ich zuvor „defineProperty“ vorgestell...

Detaillierte Erläuterung des MySQL MVCC-Mechanismusprinzips

Inhaltsverzeichnis Was ist MVCC Mysql-Sperre und ...