Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Remarque
Les abonnements Basic, Standard et Enterprise sont entrés dans une période de retraite le 17 mars 2025. Pour plus d’informations, consultez l’annonce de mise hors service d’Azure Spring Apps.
Cet article s’applique à : ✅ Essentiel/Standard ❎ Entreprise
Ce démarrage rapide explique comment créer et déployer des applications Spring sur Azure Spring Apps à l’aide d’Azure CLI.
Prérequis
- Avoir suivi les guides de démarrage rapide précédents de cette série :
Télécharger l’exemple d’application
Procédez comme suit pour télécharger l’exemple d’application. Si vous utilisiez Azure Cloud Shell, passez à une invite de commandes locale.
Créez un dossier et clonez le dépôt de l’exemple d’application.
mkdir source-codecd source-codegit clone https://github.com/Azure-Samples/azure-spring-apps-samplesAccédez au répertoire du référentiel.
cd azure-spring-apps-samples
Déployer PlanetWeatherProvider
Suivez les étapes suivantes pour déployer le projet PlanetWeatherProvider.
Créez une autre application pour le projet
PlanetWeatherProviderdans votre instance Azure Spring Apps.az spring app create --name planet-weather-provider --runtime-version NetCore_31Pour activer l’inscription automatique du service, vous avez donné à l’application le même nom que la valeur de
spring.application.namedans le fichier appsettings.json :"spring": { "application": { "name": "planet-weather-provider" } }L’exécution de cette commande peut durer plusieurs minutes.
Remplacez le répertoire par le dossier du projet PlanetWeatherProvider .
cd steeltoe-sample/src/planet-weather-providerCréez les fichiers binaires et le fichier .zip à déployer.
dotnet publish -c release -o ./publishConseil
Le fichier projet contient le code XML suivant permettant d’empaqueter les fichiers binaires dans un fichier .zip après les avoir écrits dans le dossier ./publish :
<Target Name="Publish-Zip" AfterTargets="Publish"> <ZipDirectory SourceDirectory="$(PublishDir)" DestinationFile="$(MSBuildProjectDirectory)/publish-deploy-planet.zip" Overwrite="true" /> </Target>Déployez le projet dans Azure.
Vérifiez que l’invite de commandes se trouve bien dans le dossier du projet avant d’exécuter la commande suivante.
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.zipL’option
--main-entryspécifie le chemin relatif qui va du dossier racine où se trouve le fichier .zip au fichier .dll qui contient le point d’entrée de l’application. Une fois que le service a chargé le fichier .zip, il extrait tous les fichiers et dossiers, puis tente d’exécuter le point d’entrée dans le fichier .dll spécifié.L’exécution de cette commande peut durer plusieurs minutes.
Déployer SolarSystemWeather
Suivez les étapes suivantes pour déployer le projet SolarSystemWeather.
Créez une autre application dans votre instance Azure Spring Apps pour le projet.
az spring app create --name solar-system-weather --runtime-version NetCore_31solar-system-weatherest le nom spécifié dans le fichierSolarSystemWeatherdu projet .L’exécution de cette commande peut durer plusieurs minutes.
Accédez au répertoire du projet
SolarSystemWeather.cd ../solar-system-weatherCréez les fichiers binaires et le fichier .zip à déployer.
dotnet publish -c release -o ./publishDéployez le projet dans Azure.
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.zipL’exécution de cette commande peut durer plusieurs minutes.
Affecter le point de terminaison public
Avant de tester l’application, obtenez un point de terminaison public pour une requête HTTP GET à l’application solar-system-weather.
Pour affecter le point de terminaison, exécutez la commande suivante.
az spring app update --name solar-system-weather --assign-endpoint truePour obtenir l’URL du point de terminaison, exécutez la commande suivante.
Windows :
az spring app show --name solar-system-weather --output tableLinux :
az spring app show --name solar-system-weather | grep url
Test de l’application
Pour tester l’application, envoyez une requête GET à l’application solar-system-weather. Dans un navigateur, accédez à l’URL publique en ajoutant /weatherforecast à celle-ci. Par exemple : https://servicename-solar-system-weather.azuremicroservices.io/weatherforecast
La sortie est du code JSON :
[{"Key":"Mercury","Value":"very warm"},{"Key":"Venus","Value":"quite unpleasant"},{"Key":"Mars","Value":"very cool"},{"Key":"Saturn","Value":"a little bit sandy"}]
Cette réponse indique que les deux applications Spring fonctionnent. L’application SolarSystemWeather retourne les données qu’elle a récupérées à partir de l’application PlanetWeatherProvider.
Cet article explique comment créer et déployer des applications Spring sur Azure Spring Apps. Vous pouvez utiliser Azure CLI, le plug-in Maven ou IntelliJ. Cet article décrit chacune de ces alternatives.
Prérequis
- Avoir suivi les guides de démarrage rapide précédents de cette série :
- JDK 17
- Maven 3.0 ou ultérieur
- Un abonnement Azure. Si vous n’avez pas d’abonnement, créez un compte gratuit avant de commencer.
- Éventuellement, Azure CLI version 2.45.0 ou ultérieure. Installez l’extension Azure Spring Apps avec la commande suivante :
az extension add --name spring - Éventuellement, Azure Toolkit for IntelliJ.
Créer des applications Spring localement
Utilisez les commandes suivantes pour cloner l’exemple de référentiel, accéder à l’exemple de dossier, puis générer le projet.
git clone https://github.com/azure-samples/spring-petclinic-microservices
cd spring-petclinic-microservices
mvn clean package -DskipTests -Denv=cloud
La compilation du projet prend de 5 à 10 minutes. Une le projet compilé, vous devriez avoir des fichiers JAR individuels pour chaque service dans leurs dossiers respectifs.
Créer et déployer des applications sur Azure Spring Apps
Procédez comme suit pour créer et déployer des applications sur Azure Spring Apps à l’aide de l’interface CLI.
Si vous n’avez pas exécuté les commandes suivantes dans les démarrages rapides précédents, exécutez-les maintenant pour définir les valeurs par défaut de l’interface CLI.
az configure --defaults group=<resource-group-name> spring=<service-name>Créez les deux applications Spring de base pour PetClinic :
api-gatewayetcustomers-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 2GiDéployez les fichiers JAR générés à l’étape précédente.
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"Interrogez l’état de l’application après les déploiements à l’aide de la commande suivante.
az spring app list --output tableCette commande produit une sortie semblable à celle de l’exemple suivant :
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 -
Vérifier les services
Accédez, depuis un navigateur web, à api-gateway et customers-service au moyen de l’URL publique présentée précédemment au format https://<service name>-api-gateway.azuremicroservices.io.
Conseil
Pour résoudre les problèmes liés aux déploiements, vous pouvez utiliser la commande suivante pour obtenir un streaming des journaux en temps réel chaque fois que l’application est en cours d’exécution : az spring app logs --name <app name> --follow.
Déployer des applications supplémentaires
Pour que l’application PetClinic fonctionne avec toutes les fonctionnalités comme le Serveur d’administration, les Visites et les Vétérinaires, déployez les autres applications avec les commandes suivantes :
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"
Nettoyer les ressources
Si vous prévoyez d’utiliser d’autres guides de démarrage rapide et tutoriels, vous pouvez conserver ces ressources. Quand vous n’en avez plus besoin, supprimez le groupe de ressources, ce qui supprime également les ressources qu’il contient. Pour supprimer le groupe de ressources à l’aide d’Azure CLI, utilisez les commandes suivantes :
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."