Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Die Pläne "Basic", "Standard" und "Enterprise" sind am 17. März 2025 in einen Ruhestandszeitraum eingetreten. Weitere Informationen finden Sie in der Ankündigung zur Ausmusterung von Azure Spring Apps.
Dieser Artikel gilt für:✅ Basic/Standard ❎ Enterprise
In dieser Schnellstartanleitung wird erläutert, wie Sie Spring-Anwendungen mithilfe der Azure CLI erstellen und in Azure Spring Apps bereitstellen.
Voraussetzungen
- Abschluss der vorherigen Schnellstartanleitungen in dieser Serie:
Herunterladen der Beispiel-App
Verwenden Sie die folgenden Schritte, um die Beispiel-App herunterzuladen. Wenn Sie bisher Azure Cloud Shell verwendet haben, wechseln Sie zu einer lokalen Eingabeaufforderung.
Erstellen Sie einen neuen Ordner, und klonen Sie das Beispiel-App-Repository.
mkdir source-codecd source-codegit clone https://github.com/Azure-Samples/azure-spring-apps-samplesNavigieren Sie zum Repositoryverzeichnis.
cd azure-spring-apps-samples
Bereitstellen von PlanetWeatherProvider
Führen Sie die folgenden Schritte aus, um das PlanetWeatherProvider-Projekt bereitzustellen.
Erstellen Sie in Ihrer Azure Spring Apps-Instanz eine App für das
PlanetWeatherProvider-Projekt.az spring app create --name planet-weather-provider --runtime-version NetCore_31Um die automatische Dienstregistrierung zu aktivieren, haben Sie der App den gleichen Namen geben wie den Wert von
spring.application.namein der Datei appsettings.json des Projekts:"spring": { "application": { "name": "planet-weather-provider" } }Die Ausführung dieses Befehls kann einige Minuten in Anspruch nehmen.
Wechseln Sie in das Verzeichnis des Projektordners PlanetWeatherProvider.
cd steeltoe-sample/src/planet-weather-providerErstellen Sie die Binärdateien und die ZIP-Datei, die bereitgestellt werden sollen.
dotnet publish -c release -o ./publishTipp
Die Projektdatei enthält den folgenden XML-Code zum Verpacken der Binärdateien in einer ZIP-Datei, nachdem diese in den Ordner ./publish geschrieben wurden:
<Target Name="Publish-Zip" AfterTargets="Publish"> <ZipDirectory SourceDirectory="$(PublishDir)" DestinationFile="$(MSBuildProjectDirectory)/publish-deploy-planet.zip" Overwrite="true" /> </Target>Stellen Sie das Projekt in Azure bereit.
Stellen Sie sicher, dass sich die Eingabeaufforderung im Projektordner befindet, bevor Sie den folgenden Befehl ausführen.
az spring app deploy \ --name planet-weather-provider \ --runtime-version NetCore_31 \ --main-entry Microsoft.Azure.SpringCloud.Sample.PlanetWeatherProvider.dll \ --artifact-path ./publish-deploy-planet.zipDie Option
--main-entrygibt den relativen Pfad vom Stammordner der ZIP-Datei zur DLL-Datei an, die den Einstiegspunkt der Anwendung enthält. Nachdem der Dienst die ZIP-Datei hochgeladen hat, werden alle Dateien und Ordner extrahiert, und es wird versucht, den Einstiegspunkt in der angegebenen DLL-Datei auszuführen.Die Ausführung dieses Befehls kann einige Minuten in Anspruch nehmen.
Bereitstellen von SolarSystemWeather
Führen Sie die folgenden Schritte aus, um das SolarSystemWeather-Projekt bereitzustellen.
Erstellen Sie in Ihrer Azure Spring Apps-Instanz eine weitere App für das Projekt.
az spring app create --name solar-system-weather --runtime-version NetCore_31solar-system-weatherist der Name, der in der DateiSolarSystemWeatherdes Projekts angegeben ist.Die Ausführung dieses Befehls kann einige Minuten in Anspruch nehmen.
Wechseln Sie in das Verzeichnis des Projekts
SolarSystemWeather.cd ../solar-system-weatherErstellen Sie die Binärdateien und die ZIP-Datei, die bereitgestellt werden sollen.
dotnet publish -c release -o ./publishStellen Sie das Projekt in Azure bereit.
az spring app deploy \ --name solar-system-weather \ --runtime-version NetCore_31 \ --main-entry Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather.dll \ --artifact-path ./publish-deploy-solar.zipDie Ausführung dieses Befehls kann einige Minuten in Anspruch nehmen.
Zuweisen eines öffentlichen Endpunkts
Rufen Sie vor dem Testen der Anwendung einen öffentlichen Endpunkt für eine HTTP GET-Anforderung an die solar-system-weather-Anwendung ab.
Führen Sie den folgenden Befehl aus, um den Endpunkt zuzuweisen.
az spring app update --name solar-system-weather --assign-endpoint trueFühren Sie zum Abrufen der URL des Endpunkts den folgenden Befehl aus.
Windows:
az spring app show --name solar-system-weather --output tableLinux:
az spring app show --name solar-system-weather | grep url
Testen der Anwendung
Senden Sie zum Testen der Anwendung eine GET-Anforderung an die solar-system-weather-App. Navigieren Sie in einem Browser zu der öffentlichen URL, an die Sie /weatherforecast angefügt haben. Beispiel: https://servicename-solar-system-weather.azuremicroservices.io/weatherforecast
Die Ausgabe liegt im JSON-Format vor:
[{"Key":"Mercury","Value":"very warm"},{"Key":"Venus","Value":"quite unpleasant"},{"Key":"Mars","Value":"very cool"},{"Key":"Saturn","Value":"a little bit sandy"}]
Diese Antwort zeigt, dass beide Spring-Apps funktionieren. Die App SolarSystemWeather gibt Daten zurück, die sie aus der App PlanetWeatherProvider abgerufen hat.
In diesem Artikel wird erläutert, wie Sie Spring-Anwendungen erstellen und in Azure Spring Apps bereitstellen. Sie können Azure CLI, das Maven-Plug-In oder IntelliJ verwenden. In diesem Artikel werden alle diese Alternativen beschrieben.
Voraussetzungen
- Abschluss der vorherigen Schnellstartanleitungen in dieser Serie:
- JDK 17
- Maven 3.0 oder höher
- Ein Azure-Abonnement. Wenn Sie kein Abonnement besitzen, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.
- Optional Azure CLI, Version 2.45.0 oder höher. Führen Sie den folgenden Befehl aus, um die Azure Spring Apps-Erweiterung zu installieren:
az extension add --name spring - Optional, das Azure-Toolkit für IntelliJ.
Lokales Erstellen der Spring-Anwendungen
Verwenden Sie die folgenden Befehle, um das Beispielrepository zu klonen, zum Beispielordner zu navigieren und dann das Projekt zu erstellen.
git clone https://github.com/azure-samples/spring-petclinic-microservices
cd spring-petclinic-microservices
mvn clean package -DskipTests -Denv=cloud
Die Kompilierung des Projekts dauert fünf bis zehn Minuten. Nach der Kompilierung des Projekts sollten in den entsprechenden Ordner einzelne JAR-Dateien für jeden Dienst vorhanden sein.
Erstellen und Bereitstellen von Apps in Azure Spring Apps
Führen Sie die folgenden Schritte aus, um Apps in Azure Spring Apps zu erstellen und mithilfe der CLI bereitzustellen.
Falls Sie die folgenden Befehle in den vorherigen Schnellstartanleitungen nicht ausgeführt haben, führen Sie sie jetzt aus, um die CLI-Standardwerte festzulegen.
az configure --defaults group=<resource-group-name> spring=<service-name>Erstellen Sie die zwei zentralen Spring-Anwendungen für PetClinic:
api-gatewayundcustomers-service.az spring app create \ --name api-gateway \ --runtime-version Java_17 \ --instance-count 1 \ --memory 2Gi \ --assign-endpoint az spring app create \ --name customers-service \ --runtime-version Java_17 \ --instance-count 1 \ --memory 2GiStellen Sie die im vorherigen Schritt erstellten JAR-Dateien bereit.
az spring app deploy \ --name api-gateway \ --artifact-path spring-petclinic-api-gateway/target/api-gateway-3.0.1.jar \ --jvm-options="-Xms2048m -Xmx2048m" az spring app deploy \ --name customers-service \ --artifact-path spring-petclinic-customers-service/target/customers-service-3.0.1.jar \ --jvm-options="-Xms2048m -Xmx2048m"Fragen Sie den App-Status nach der Bereitstellung mit dem folgenden Befehl ab.
az spring app list --output tableDieser Befehl erzeugt eine Ausgabe ähnlich wie im folgenden Beispiel:
Name Location ResourceGroup Production Deployment Public Url Provisioning Status CPU Memory Running Instance Registered Instance Persistent Storage ----------------- ---------- --------------- ----------------------- --------------------------------------------------- --------------------- ----- -------- ------------------ --------------------- -------------------- api-gateway eastus xxxxxx-sp default https://<service name>-api-gateway.azuremicroservices.io Succeeded 1 2 1/1 1/1 - customers-service eastus <service name> default Succeeded 1 2 1/1 1/1 -
Überprüfen der Dienste
Greifen Sie in einem Browser über die zuvor gezeigte api-gateway im Format customers-service auf und https://<service name>-api-gateway.azuremicroservices.io zu.
Tipp
Zum Beheben von Problemen bei der Bereitstellung können Sie den folgenden Befehl verwenden, um Protokollstreaming in Echtzeit zu erhalten, wenn die App ausgeführt wird: az spring app logs --name <app name> --follow.
Bereitstellen zusätzlicher Apps
Damit die PetClinic-App mit allen Features wie Verwaltungsserver, Besuche und Tierärzte funktioniert, stellen Sie die anderen Apps mit den folgenden Befehlen bereit:
az spring app create \
--name admin-server \
--runtime-version Java_17 \
--instance-count 1 \
--memory 2Gi \
--assign-endpoint
az spring app create \
--name vets-service \
--runtime-version Java_17 \
--instance-count 1 \
--memory 2Gi
az spring app create \
--name visits-service \
--runtime-version Java_17 \
--instance-count 1 \
--memory 2Gi
az spring app deploy \
--name admin-server \
--runtime-version Java_17 \
--artifact-path spring-petclinic-admin-server/target/admin-server-3.0.1.jar \
--jvm-options="-Xms1536m -Xmx1536m"
az spring app deploy \
--name vets-service \
--runtime-version Java_17 \
--artifact-path spring-petclinic-vets-service/target/vets-service-3.0.1.jar \
--jvm-options="-Xms1536m -Xmx1536m"
az spring app deploy \
--name visits-service \
--runtime-version Java_17 \
--artifact-path spring-petclinic-visits-service/target/visits-service-3.0.1.jar \
--jvm-options="-Xms1536m -Xmx1536m"
Bereinigen von Ressourcen
Falls Sie mit weiteren Schnellstartanleitungen und Tutorials fortfahren möchten, sollten Sie die Ressourcen nicht bereinigen. Wenn Sie die Ressourcen nicht mehr benötigen, löschen Sie die Ressourcengruppe. Dadurch werden die Ressourcen in der Ressourcengruppe gelöscht. 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 ..."