Heim Java javaLernprogramm Dockerisieren einer Spring Boot-Anwendung für Anfänger

Dockerisieren einer Spring Boot-Anwendung für Anfänger

Oct 25, 2024 pm 10:44 PM

Dockerizing a Spring Boot Application For Beginners

Voraussetzungen

  1. Installieren Sie Docker auf Ihrem Computer (folgen Sie der offiziellen Installationsanleitung von Docker).
  2. Grundlegende Spring Boot-Anwendung – Stellen Sie sicher, dass Ihre Spring Boot-App für die Containerisierung bereit ist.

Schritt 1: Erstellen Sie eine einfache Spring Boot-Anwendung

Wenn Sie noch keine Anwendung haben, erstellen Sie eine mit Spring Initializr (https://start.spring.io/).
Generieren Sie ein einfaches Maven- oder Gradle-Projekt mit den von Ihnen benötigten Abhängigkeiten (z. B. Spring Web).

Schritt 2: Erstellen Sie eine Docker-Datei

Erstellen Sie im Stammverzeichnis Ihrer Spring Boot-Anwendung eine neue Datei mit dem Namen Dockerfile (ohne Erweiterung).

# Use an official JDK runtime as a parent image
FROM openjdk:17-jdk-slim

# Add a label to identify the application
LABEL maintainer="your-email@example.com"

# Set the working directory in the container
WORKDIR /app

# Copy the application JAR file to the container
COPY target/your-application-name.jar app.jar

# Expose the port your app runs on
EXPOSE 8080

# Run the application
ENTRYPOINT ["java", "-jar", "app.jar"]
Nach dem Login kopieren

Hinweis: Ersetzen Sie your-application-name.jar durch den tatsächlichen Namen Ihrer Spring Boot-JAR-Datei.

Schritt 3: Erstellen Sie die Anwendung

Navigieren Sie im Terminal zum Stammverzeichnis Ihres Spring Boot-Projekts und führen Sie dann Folgendes aus:

./mvnw clean package
Nach dem Login kopieren

Dadurch wird die Anwendung erstellt und eine JAR-Datei im Verzeichnis target/ generiert.

Schritt 4: Erstellen Sie das Docker-Image

Führen Sie den folgenden Befehl im Terminal im Stammverzeichnis Ihres Projekts aus (dort, wo sich die Docker-Datei befindet):

docker build -t my-spring-boot-app .
Nach dem Login kopieren

Hier:

  • -t my-spring-boot-app markiert Ihr Bild als my-spring-boot-app.
  • . Gibt das aktuelle Verzeichnis an, in dem Docker nach der Docker-Datei sucht.

Schritt 5: Führen Sie den Docker-Container aus

Nachdem das Image erstellt wurde, können Sie den Container ausführen:

docker run -p 8080:8080 my-spring-boot-app
Nach dem Login kopieren

Erklärung:

  • -p 8080:8080 ordnet den Port 8080 des Containers dem Port 8080 Ihrer Maschine zu.
  • my-spring-boot-app gibt das auszuführende Docker-Image an.

Ihre Spring Boot-Anwendung sollte jetzt unter http://localhost:8080 zugänglich sein.

Schritt 6: Überprüfen Sie die Anwendung

Öffnen Sie einen Browser oder verwenden Sie ein Tool wie Curl, um auf die Anwendung zuzugreifen und zu überprüfen, ob sie funktioniert:

curl http://localhost:8080
Nach dem Login kopieren

Optionale Schritte

  1. Stoppen Sie den Docker-Container: Finden Sie die Container-ID mit docker ps und stoppen Sie sie mit:
   docker stop <container-id>
Nach dem Login kopieren
  1. Nicht verwendete Bilder/Container bereinigen:
   docker system prune
Nach dem Login kopieren

Zusammenfassung

  1. Dockerfile – Definieren Sie, wie das Docker-Image erstellt wird.
  2. Build – Erstellen Sie das Docker-Image.
  3. Ausführen – Starten Sie den Container und greifen Sie auf die Anwendung zu.

Dieser Ansatz sollte Ihnen einen klaren Weg zur Dockerisierung Ihrer Spring Boot-Anwendung bieten!

Das obige ist der detaillierte Inhalt vonDockerisieren einer Spring Boot-Anwendung für Anfänger. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

<🎜>: Bubble Gum Simulator Infinity - So erhalten und verwenden Sie Royal Keys
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusionssystem, erklärt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1664
14
PHP-Tutorial
1269
29
C#-Tutorial
1249
24
Verursacht die Sicherheitssoftware des Unternehmens, die die Anwendung nicht ausführt? Wie kann man es beheben und es lösen? Verursacht die Sicherheitssoftware des Unternehmens, die die Anwendung nicht ausführt? Wie kann man es beheben und es lösen? Apr 19, 2025 pm 04:51 PM

Fehlerbehebung und Lösungen für die Sicherheitssoftware des Unternehmens, die dazu führt, dass einige Anwendungen nicht ordnungsgemäß funktionieren. Viele Unternehmen werden Sicherheitssoftware bereitstellen, um die interne Netzwerksicherheit zu gewährleisten. ...

Wie konvertiere ich Namen in Zahlen, um die Sortierung zu implementieren und die Konsistenz in Gruppen aufrechtzuerhalten? Wie konvertiere ich Namen in Zahlen, um die Sortierung zu implementieren und die Konsistenz in Gruppen aufrechtzuerhalten? Apr 19, 2025 pm 11:30 PM

Lösungen zum Umwandeln von Namen in Zahlen zur Implementierung der Sortierung in vielen Anwendungsszenarien müssen Benutzer möglicherweise in Gruppen sortieren, insbesondere in einem ...

Wie vereinfachte ich Probleme mit der Feldzuordnung im Systemdocking mithilfe des Mapstruct? Wie vereinfachte ich Probleme mit der Feldzuordnung im Systemdocking mithilfe des Mapstruct? Apr 19, 2025 pm 06:21 PM

Die Verarbeitung von Feldzuordnungen im Systemdocken stößt häufig auf ein schwieriges Problem bei der Durchführung von Systemdocken: So kartieren Sie die Schnittstellenfelder des Systems und ...

Wie identifiziert Intellij IDEA die Portnummer eines Spring -Boot -Projekts, ohne ein Protokoll auszugeben? Wie identifiziert Intellij IDEA die Portnummer eines Spring -Boot -Projekts, ohne ein Protokoll auszugeben? Apr 19, 2025 pm 11:45 PM

Beginnen Sie den Frühling mit der Intellijideaultimate -Version ...

Wie kann ich elegante Entitätsklassenvariablennamen erhalten, um Datenbankabfragebedingungen zu erstellen? Wie kann ich elegante Entitätsklassenvariablennamen erhalten, um Datenbankabfragebedingungen zu erstellen? Apr 19, 2025 pm 11:42 PM

Bei Verwendung von MyBatis-Plus oder anderen ORM-Frameworks für Datenbankvorgänge müssen häufig Abfragebedingungen basierend auf dem Attributnamen der Entitätsklasse erstellt werden. Wenn Sie jedes Mal manuell ...

Wie kann ich Java -Objekte sicher in Arrays umwandeln? Wie kann ich Java -Objekte sicher in Arrays umwandeln? Apr 19, 2025 pm 11:33 PM

Konvertierung von Java-Objekten und -Arrays: Eingehende Diskussion der Risiken und korrekten Methoden zur Konvertierung des Guss-Typs Viele Java-Anfänger werden auf die Umwandlung eines Objekts in ein Array stoßen ...

Wie verwendet ich die Redis -Cache -Lösung, um die Anforderungen der Produktranking -Liste effizient zu erkennen? Wie verwendet ich die Redis -Cache -Lösung, um die Anforderungen der Produktranking -Liste effizient zu erkennen? Apr 19, 2025 pm 11:36 PM

Wie erkennt die Redis -Caching -Lösung die Anforderungen der Produktranking -Liste? Während des Entwicklungsprozesses müssen wir uns häufig mit den Anforderungen der Ranglisten befassen, z. B. das Anzeigen eines ...

E-Commerce-Plattform SKU und SPU-Datenbankdesign: Wie berücksichtigen Sie sowohl benutzerdefinierte Attribute als auch Attributloses Produkte? E-Commerce-Plattform SKU und SPU-Datenbankdesign: Wie berücksichtigen Sie sowohl benutzerdefinierte Attribute als auch Attributloses Produkte? Apr 19, 2025 pm 11:27 PM

Detaillierte Erläuterung des Designs von SKU- und SPU-Tabellen auf E-Commerce-Plattformen In diesem Artikel werden die Datenbankdesignprobleme von SKU und SPU in E-Commerce-Plattformen erörtert, insbesondere wie man mit benutzerdefinierten Verkäufen umgeht ...

See all articles