Docker-Bereitstellung – Springboot-Projektbeispielanalyse

Docker-Bereitstellung – Springboot-Projektbeispielanalyse

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:
  • So stellen Sie ein SpringBoot-Projekt mit Dockerfile bereit
  • So stellen Sie ein SpringBoot-Projekt mit Docker bereit
  • Detaillierte Erläuterung der Docker-Bereitstellungspraxis des Springboot-Projekts
  • Java-Remote-Ein-Klick-Bereitstellung von Springboot auf Docker über Idea
  • Detaillierte Schritte zum Bereitstellen von SpringBoot-Projekten mit Docker in Idea
  • Stellen Sie das Springboot-Projekt basierend auf der Idee im Docker bereit
  • Detaillierte Schritte zur automatischen Bereitstellung von Linux+Docker+SpringBoot+IDEA mit nur einem Klick
  • Implementierung der Springboot-Verpackung als Docker-Image und Deployment
  • So implementieren Sie die automatische Bereitstellung des Springboot-Dienstes Docker
  • idea verwendet Docker-Plugin, um automatisierte Bereitstellung mit einem Klick zu erreichen

<<:  JavaScript zum Erreichen eines einfachen Tab-Leisten-Umschaltens

>>:  Durch Kombinieren von Einfügen und Auswählen wird die Methode „Einfügen des Maximalwerts eines Felds in der Datenbank + 1“ implementiert.

Artikel empfehlen

Unbekannte Verwendung von Object.entries in JavaScript

Inhaltsverzeichnis Vorwort 1. Verwenden Sie for.....

Tutorial zur Installation von Ceph Distributed Storage mit Yum unter Centos7

Inhaltsverzeichnis Vorwort Konfigurieren Sie die ...

Der Unterschied zwischen clientWidth, offsetWidth, scrollWidth in JavaScript

1. Konzept Sie alle sind Attribute des Elements u...

Ubuntu-Installations-Grafiktreiber und CUDA-Tutorial

Inhaltsverzeichnis 1. Deinstallieren Sie den Orig...

So verarbeiten Sie lokal dynamisch geladene Bilder in Vue

Finden Sie das Problem Heute bin ich auf ein Prob...

Zusammenfassung und Beispiele der Kommunikationsmethoden für Vue3-Komponenten

Die Kommunikationsmodi der Vue3-Komponenten sind ...

Zusammenfassung der Datenspeicherstruktur des Nginx-HTTP-Moduls

Ab diesem Abschnitt erklären wir das Implementier...

HTML validieren HTML-Validierung

„HTML-Validierung“ bezieht sich auf die HTML-Valid...

Navicat-Verbindung MySQL Fehlerbeschreibungsanalyse

Inhaltsverzeichnis Umfeld Version der virtuellen ...

SQL-Implementierung von LeetCode (196. Doppelte Postfächer löschen)

[LeetCode] 196.Doppelte E-Mails löschen Schreiben...