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:
|
<<: Beispiel für das Hinzufügen eines Musikvideos zu einer HTML-Seite
>>: Regenbogen-Button-Stil erstellt mit CSS3
In Sprachen werden häufig Makros zur Implementier...
Einführung in strukturelle Pseudoklassenselektore...
Inhaltsverzeichnis Ziel Gedankenanalyse Code-Land...
Szenariosimulation: Einige inländische Unternehme...
Inhaltsverzeichnis Einführung Untergeordneter Pro...
Da dies mein erster Beitrag ist, weisen Sie mich ...
Die nativen Komponenten des WeChat-Miniprogramms ...
Inhaltsverzeichnis 1. Was ist JSONP 2. JSONP-Cros...
Die stabile Version (GA) von MySQL 8.0.18 wurde g...
Um Kernelmodule in CentOS automatisch zu laden, k...
In diesem Artikelbeispiel wird der spezifische Co...
Vorwort Als ich zuvor „defineProperty“ vorgestell...
Inhaltsverzeichnis Was ist MVCC Mysql-Sperre und ...
Vorwort In diesem Artikel verwenden wir Docker, u...