Bereitstellen von Spring Boot-Anwendungen mithilfe von Maven
Hinweis
Die Pläne Basic, Standard und Enterprise gelten ab Mitte März 2025 als veraltet und werden über einen Zeitraum von drei Jahren eingestellt. Es wird empfohlen, auf Azure Container Apps umzustellen. Weitere Informationen finden Sie in der Ankündigung zur Einstellung von Azure Spring Apps.
Der Plan Standardverbrauch und dediziert gilt ab dem 30. September 2024 als veraltet und wird nach sechs Monaten vollständig eingestellt. Es wird empfohlen, auf Azure Container Apps umzustellen. Weitere Informationen finden Sie unter Migrieren des Plans „Standardverbrauch und dediziert“ von Azure Spring Apps zu Azure Container Apps.
Dieser Artikel gilt für:✅️ Java ❎ C#
Dieser Artikel gilt für:✅ Basic/Standard ✅ Enterprise
In diesem Artikel erfahren Sie, wie Sie das Maven-Plug-In von Azure Spring Apps verwenden, um Anwendungen in Azure Spring Cloud zu konfigurieren und bereitzustellen.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
- Eine bereits bereitgestellte Azure Spring Apps-Instanz.
- JDK 8 oder JDK 11
- Apache Maven
- Azure CLI, Version 2.45.0 oder höher mit der Azure Spring Apps-Erweiterung. Sie können diese Erweiterung mit dem folgenden Befehl installieren:
az extension add --name spring
Generieren eines Spring-Projekts
Führen Sie die folgenden Schritte aus, um ein Spring Apps-Projekt für die Verwendung in diesem Artikel zu erstellen:
Navigieren Sie zu Spring Initializr, um ein Beispielprojekt mit den empfohlenen Abhängigkeiten für Azure Spring Apps zu generieren. Dieser Link verwendet die folgende URL, um Ihnen Standardeinstellungen bereitzustellen.
https://start.spring.io/#!type=maven-project&language=java&platformVersion=2.5.7&packaging=jar&jvmVersion=1.8&groupId=com.example&artifactId=hellospring&name=hellospring&description=Demo%20project%20for%20Spring%20Boot&packageName=com.example.hellospring&dependencies=web,cloud-eureka,actuator,cloud-config-client
Die folgende Abbildung zeigt das empfohlene Spring Initializr-Setup für dieses Beispielprojekt.
In diesem Beispiel wird Java-Version 8 verwendet. Wenn Sie Java-Version 11 verwenden möchten, ändern Sie die Option unter Projektmetadaten.
Wählen Sie Generieren aus, wenn alle Abhängigkeiten festgelegt sind.
Laden Sie das Paket herunter, entpacken Sie es, und erstellen Sie dann einen Webcontroller für eine Webanwendung. Fügen Sie folgende Inhalte in der Datei src/main/java/com/example/hellospring/HelloController.java hinzu:
package com.example.hellospring; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RequestMapping; @RestController public class HelloController { @RequestMapping("/") public String index() { return "Greetings from Azure Spring Apps!"; } }
Lokales Erstellen der Spring-Anwendungen
Führen Sie die folgenden Befehle aus, um das Projekt mithilfe von Maven zu erstellen:
cd hellospring
mvn clean package -DskipTests -Denv=cloud
Die Kompilierung des Projekts dauert einige Minuten. Nach Abschluss des Vorgangs sollten die entsprechenden Ordner einzelne JAR-Dateien für jeden Dienst enthalten.
Bereitstellen einer Instanz von Azure Spring Apps
Mit dem folgenden Verfahren erstellen Sie eine Azure Spring Apps-Instanz über das Azure-Portal.
Öffnen Sie das Azure-Portal in einem neuen Tab.
Suchen Sie im Suchfeld oben nach Azure Spring Apps.
Wählen Sie in den Ergebnissen Azure Spring Apps aus.
Wählen Sie auf der Seite „Azure Spring Apps“ die Option Erstellen aus.
Füllen Sie das Formular auf der Azure Spring Apps-Seite Erstellen aus. Berücksichtigen Sie die folgenden Richtlinien:
- Abonnement: Wählen Sie das Abonnement aus, unter dem diese Ressource abgerechnet werden soll.
- Ressourcengruppe: Die Erstellung neuer Ressourcengruppen für neue Ressourcen ist eine bewährte Methode. Sie verwenden diese Ressourcengruppe in späteren Schritten als <Ressourcengruppennamen>.
- Dienstdetails/Name: Geben Sie den <Dienstinstanznamen> an. Der Name muss zwischen 4 und 32 Zeichen lang sein und darf nur Kleinbuchstaben, Ziffern und Bindestriche enthalten. Das erste Zeichen des Dienstnamens muss ein Buchstabe und das letzte Zeichen entweder ein Buchstabe oder eine Ziffer sein.
- Standort: Wählen Sie die Region für Ihre Dienstinstanz aus.
Klicken Sie auf Überprüfen und erstellen.
Generieren von Konfigurationen und Bereitstellen in Azure Spring Apps
Führen Sie die folgenden Schritte aus, um Konfigurationen zu generieren und die App bereitzustellen:
Führen Sie den folgenden Befehl im Stammordner hellospring aus, der die POM-Datei enthält. Wenn Sie sich bereits bei der Azure-Befehlszeilenschnittstelle angemeldet haben, werden die Anmeldeinformationen automatisch vom Befehl abgerufen. Andernfalls gibt der Befehl Anmeldeanweisungen. Weitere Informationen finden Sie unter Authentifizierung im Repository azure-maven-plugins auf GitHub.
mvn com.microsoft.azure:azure-spring-apps-maven-plugin:1.10.0:config
Sie werden zur Auswahl der folgenden Angaben aufgefordert:
- Abonnement-ID: das Abonnement, das Sie zum Erstellen einer Azure Spring Apps-Instanz verwendet haben
- Dienstinstanz: der Name Ihrer Azure Spring Apps-Instanz
- App-Name: ein App-Name Ihrer Wahl (oder verwenden Sie den Standardwert
artifactId
) - Öffentlicher Endpunkt - true, um die App für den öffentlichen Zugriff verfügbar zu machen; andernfalls false
Stellen Sie sicher, dass das
appName
-Element in der POM-Datei den richtigen Wert hat. Der relevante Teil der POM-Datei sollte ähnlich wie im folgenden Beispiel aussehen.<build> <plugins> <plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-spring-apps-maven-plugin</artifactId> <version>1.10.0</version> <configuration> <subscriptionId>xxxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx</subscriptionId> <clusterName>v-spr-cld</clusterName> <appName>hellospring</appName>
Die POM-Datei enthält jetzt die Plug-In-Abhängigkeiten und -Konfigurationen.
Stellen Sie die App mit dem folgenden Befehl bereit.
mvn azure-spring-apps:deploy
Überprüfen der Dienste
Nach Abschluss der Bereitstellung können Sie unter https://<service instance name>-hellospring.azuremicroservices.io/
auf die App zugreifen.
Bereinigen von Ressourcen
Falls Sie mit der Beispielanwendung fortfahren möchten, sollten Sie die Ressourcen nicht bereinigen. Löschen Sie die Ressourcengruppe, die Ihre Azure Spring Apps-Instanz enthält, wenn sie nicht mehr benötigt wird. Wenn Sie die Ressourcengruppe mithilfe der Azure CLI löschen möchten, verwenden Sie die folgenden Befehle:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."