Heim > Java > javaLernprogramm > Containerisierungspraxis von Spring Cloud-Mikrodiensten

Containerisierungspraxis von Spring Cloud-Mikrodiensten

PHPz
Freigeben: 2023-06-22 23:39:54
Original
1396 Leute haben es durchsucht

Mit der Entwicklung von Cloud Computing und Container-Technologie und der Popularität der Microservice-Architektur haben viele Unternehmen begonnen, Containerisierungstechnologien wie Docker für die Bereitstellung von Microservices zu nutzen. Als beliebtes Microservice-Framework bewegt sich Spring Cloud auch schrittweise in Richtung Containerisierung. In diesem Artikel wird die Praxis der Spring Cloud-Microservice-Containerisierung vorgestellt.

1. Spring Boot-Microservices dockerisieren

Zuerst müssen wir Spring Boot-Microservices dockerisieren. Zuerst müssen wir die Docker-Datei schreiben. Das Folgende ist ein einfaches Dockerfile-Beispiel:

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ARG JAR_FILE=target/*.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
Nach dem Login kopieren

In dieser Dockerfile erstellen wir ein Docker-Image basierend auf OpenJDK 8, definieren dann ein VOLUME-Verzeichnis und verwenden die ARG-Anweisung, um den Pfad zum JAR-Paket anzugeben. Abschließend kopieren wir das JAR-Paket in den Container und geben den Befehl ENTRYPOINT an, um den Spring Boot-Mikrodienst zu starten.

Als nächstes erstellen Sie das Docker-Image (vorausgesetzt, unsere Spring Boot-Anwendung heißt „sample-microservice“) mit dem folgenden Befehl:

docker build -t sample-microservice:1.0 .
Nach dem Login kopieren

Dann können wir den Docker-Container mit dem folgenden Befehl ausführen:

docker run -p 8080:8080 sample-microservice:1.0
Nach dem Login kopieren

Dieser wird auf dem lokalen Host sein Starten Sie unseren Spring Boot-Microservice auf Port 8080.

2. Verwenden Sie Docker Compose, um Spring Cloud-Microservices bereitzustellen.

Docker Compose ist ein sehr gutes Tool, mit dem problemlos mehrere Docker-Container definiert und bereitgestellt werden können. Als Nächstes werden wir Docker Compose verwenden, um unsere Spring Cloud-Microservices bereitzustellen.

Zuerst müssen wir die Datei docker-compose.yml schreiben. In dieser Datei müssen wir das Docker-Image, den Port und die Abhängigkeiten jedes Mikrodienstes definieren. Hier ist ein Beispiel einer einfachen docker-compose.yml-Datei:

version: '3'
services:
  eureka-server:
    image: springcloud/eureka-server
    ports:
      - "8761:8761"
  sample-microservice:
    image: sample-microservice:1.0
    ports:
      - "8080:8080"
    depends_on:
      - eureka-server
    environment:
      - EUREKA_SERVER=http://eureka-server:8761/eureka/
Nach dem Login kopieren

In dieser docker-compose.yml-Datei definieren wir zwei Dienste: Eureka Server und Sample Microservice. Eureka Server ist das Spring Cloud-Mikroservice-Registrierungszentrum. Wir verwenden das Bild springcloud/eureka-server, das von der offiziellen Spring Cloud-Website bereitgestellt wird. Sample Microservice ist unser früherer Dockerized Spring Boot-Microservice mit Port 8080. Wir haben außerdem eine Umgebungsvariable EUREKA_SERVER definiert, die auf die Adresse des Eureka-Servers verweist.

Als nächstes verwenden Sie den folgenden Befehl, um Docker Compose zu starten:

docker-compose up
Nach dem Login kopieren

Dadurch werden der Eureka-Server und der Beispiel-Microservice automatisch gestartet und verbunden. Wir können Docker Compose mit den folgenden Befehlen stoppen und entfernen:

docker-compose down
Nach dem Login kopieren

Zusammenfassung

Mit den oben genannten Schritten können wir unsere Spring Cloud-Microservices einfach mit Docker und Docker Compose bereitstellen. Durch die Containerisierung sind unsere Microservices einfacher zu verwalten und bereitzustellen und können problemlos in verschiedenen Umgebungen ausgeführt werden. Darüber hinaus können Sie mit Docker Compose Verknüpfungen und Abhängigkeiten zwischen verschiedenen Containern erstellen. Ich hoffe, dieser Artikel kann Ihnen helfen, die Containerisierung von Spring Cloud-Mikrodiensten besser zu verstehen und zu üben.

Das obige ist der detaillierte Inhalt vonContainerisierungspraxis von Spring Cloud-Mikrodiensten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage