Dieser Artikel stellt hauptsächlich die Beispielanalyse der Docker-Bereitstellung im Springboot-Projekt vor. Der Beispielcode wird in diesem Artikel ausführlich vorgestellt, was einen gewissen Referenzwert für das Studium oder die Arbeit aller hat. Freunde, die ihn brauchen, können ihn zu Rate ziehen. Erstellen eines Projekts pom.xml <?xml version="1.0" encoding="UTF-8"?> <Projekt xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <übergeordnetes Element> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.9.RELEASE</version> <relativePath/> <!-- übergeordnetes Element im Repository suchen --> </übergeordnet> <groupId>com.topcheer</groupId> <artifactId>Docker</artifactId> <version>0.0.1-SNAPSHOT</version> <Name>Docker</Name> <description>Demoprojekt für Spring Boot</description> <Eigenschaften> <java.version>1.8</java.version> <docker.image.prefix>topcheer</docker.image.prefix> </Eigenschaften> <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> <Bauen> <Plugins> <Plugin> <groupId>org.springframework.boot</groupId> <artifactId>Spring-Boot-Maven-Plugin</artifactId> </plugin> <Plugin> <groupId>com.spotify</groupId> <artifactId>Docker-Maven-Plugin</artifactId> <version>1.0.0</version> <Konfiguration> <imageName>${docker.image.prefix}/${project.artifactId}</imageName> <dockerDirectory>src/main/docker</dockerDirectory> <Ressourcen> <Ressource> <Zielpfad>/</Zielpfad> <Verzeichnis>${project.build.directory}</Verzeichnis> <include>${project.build.finalName}.jar</include> </Ressource> </Ressourcen> </Konfiguration> </plugin> </plugins> </bauen> </Projekt> Startup-Klasse @SpringBootAnwendung @Regler öffentliche Klasse DockerApplication { öffentliche statische void main(String[] args) { SpringApplication.run(DockerApplication.class, args); } @RequestMapping("/Benutzer/finden") @AntwortBody öffentliches Objekt findUser(){ Map<String, String > map = neue HashMap<>(); map.put("name", "xdclass.net"); map.put("Alter","28"); Rückfahrkarte; } } Da Harbor nicht installiert ist, kann das Image nicht in das private Image-Repository übertragen werden, daher wird es zuerst manuell ausgeführt. mvn install, dann Dockerfile und JAR-Paket zusammenfügen [root@topcheer Docker]# ll Gesamtverbrauch 16452 -rw-r--r-- 1 root root 168 Okt 28 14:24 Dockerfile -rw-r--r-- 1 root root 16842487 Okt 28 14:17 docker.jar [root@topcheer docker]# cat Dockerfile VON java:8 VOLUMEN /tmp HINZUFÜGEN docker.jar app.jar Führen Sie den Befehl bash -c 'touch /app.jar' aus. EXPOSE 8080 EINSTIEGSPUNKT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] [root@topcheer Docker] In Image kompilieren und starten [root@topcheer docker]# docker build -f Dockerfile -t boot . Senden des Build-Kontexts an den Docker-Daemon 16,85 MB Schritt 1/6: FROM java:8 ---> d23bdf5b1b1b Schritt 2/6: VOLUME /tmp ---> Wird ausgeführt in 35037b5a7791 ---> e96b96457c78 Zwischenbehälter ausbauen 35037b5a7791 Schritt 3/6: docker.jar app.jar hinzufügen ---> 06bcfdcff437 Zwischenbehälter entfernen 2e2e5e559ae4 Schritt 4/6: Führen Sie den Befehl bash -c 'touch /app.jar' aus. ---> Wird ausgeführt in 16441febc271 ---> 1779caa23f77 Zwischenbehälter entfernen 16441febc271 Schritt 5/6: 8080 freilegen ---> Wird ausgeführt in 14dd752ce247 ---> 505044f5cdf8 Zwischenbehälter entfernen 14dd752ce247 Schritt 6/6: ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom -jar /app.jar ---> Wird ausgeführt in 832e4ca95dd2 ---> 1cb7bd139478 Zwischenbehälter entfernen 832e4ca95dd2 Erfolgreich erstellt 1cb7bd139478 [root@topcheer docker]# Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT GRÖSSE boot latest 1cb7bd139478 Vor etwa einer Minute 677 MB registry.cn-hangzhou.aliyuncs.com/dalianpai/topcheer zipkin 17c2bb09f482 vor 6 Tagen 154 MB docker.io/mysql latest c8ee894bd2bd vor 11 Tagen 456 MB elasticsearch latest 874179f19603 vor 4 Wochen 771 MB docker.io/nacos/nacos-server latest a4229ac5cc19 vor 4 Wochen 710 MB springbootdemo4docker latest cd13bc7f56a0 vor 5 Wochen 678 MB docker.io/tomcat latest ee48881b3e82 vor 6 Wochen 506 MB docker.io/rabbitmq latest a00bc560660a vor 6 Wochen 147 MB docker.io/centos-latest 67fa590cfc1c vor 2 Monaten 202 MB docker.io/redis latest f7302e4ab3a8 vor 2 Monaten 98,2 MB docker.io/rabbitmq 3.7.16-management 3f92e6354d11 vor 3 Monaten 177 MB docker.io/elasticsearch 6.8.0 d0b291d7093b vor 5 Monaten 895 MB docker.io/hello-world latest fce289e99eb9 vor 10 Monaten 1,84 kB docker.io/java 8 d23bdf5b1b1b vor 2 Jahren 643 MB [root@topcheer docker]# docker run -d -p 8080:8080 boot 882ff5209aa2f40972a914b901750a50320faea65100b33e57b9c8a41533ca0b prüfen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: JavaScript zum Erreichen eines einfachen Tab-Leisten-Umschaltens
Vorwort Projektanforderungen: Installieren Sie da...
Inhaltsverzeichnis Vorwort 1. Verwenden Sie for.....
Inhaltsverzeichnis Vorwort Konfigurieren Sie die ...
1. Konzept Sie alle sind Attribute des Elements u...
Inhaltsverzeichnis 1. Deinstallieren Sie den Orig...
Finden Sie das Problem Heute bin ich auf ein Prob...
Die Kommunikationsmodi der Vue3-Komponenten sind ...
Inhaltsverzeichnis Vorwort 1. Deinstallieren Sie ...
Die Eigenschaft, Text in CSS zu zentrieren, lässt ...
1. Verwenden Sie das Playbook von Ansible, um htt...
Ab diesem Abschnitt erklären wir das Implementier...
„HTML-Validierung“ bezieht sich auf die HTML-Valid...
Inhaltsverzeichnis Umfeld Version der virtuellen ...
1. Ich habe lange im Internet gesucht, konnte abe...
[LeetCode] 196.Doppelte E-Mails löschen Schreiben...