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

Zusammenfassung der Wissenspunkte zu Null in der MySQL-Datenbank

In der MySQL-Datenbank ist Null eine häufige Situ...

Warum Entwickler Datenbanksperren im Detail verstehen müssen

1.Sperren? 1.1 Was ist ein Schloss? Die eigentlic...

So kommunizieren Sie mit anderen Benutzern über die Linux-Befehlszeile

Es ist ganz einfach, Nachrichten an andere Benutz...

MySQL-Protokolleinstellungen und Anzeigemethoden

MySQL verfügt über die folgenden Protokolle: Fehl...

Native JS-Implementierung der Lupenkomponente

In diesem Artikelbeispiel wird der spezifische Co...

Detaillierte Erläuterung des Prozesses der Zabbix-Überwachung von SQLServer

Werfen wir einen Blick auf die Zabbix-Überwachung...

Lösung für unvollständige Textanzeige im El-Tree

Inhaltsverzeichnis Methode 1: Der einfachste Weg,...

So erstellen Sie DockerHub selbst

Der Docker Hub, den wir zuvor verwendet haben, wi...

Die Frontend-Entwicklung muss jeden Tag lernen, HTML-Tags zu verstehen (1)

2.1 Semantisierung sorgt dafür, dass Ihre Webseit...

So konfigurieren Sie Java-Umgebungsvariablen im Linux-System

Konfigurieren von Java-Umgebungsvariablen Hier we...

Architektur und Komponentenbeschreibung der privaten Docker-Bibliothek Harbor

In diesem Artikel wird die Zusammensetzung der Ha...