Déployer des applications Spring Boot à l’aide de Maven

Notes

Azure Spring Apps est le nouveau nom du service Azure Spring Cloud. Bien que le service ait un nouveau nom, vous verrez l’ancien nom à divers endroits pendant un certain temps, car nous travaillons à mettre à jour les ressources telles que les captures d’écran, les vidéos et les diagrammes.

Cet article s’applique à : ✔️ Java ❌ C#

Cet article s’applique à : ✔️ De base/Standard ✔️ Entreprise

Cet article vous explique comment utiliser le plug-in Maven Azure Spring Apps pour configurer et déployer des applications sur Azure Spring Apps.

Prérequis

Générer un projet Spring

Pour créer un projet Spring à utiliser dans cet article, procédez comme suit :

  1. Accédez à Spring Initializr pour générer un exemple de projet avec des dépendances recommandées pour Azure Spring Apps. Ce lien utilise l’URL suivante pour vous fournir les paramètres par défaut.

    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
    

    L’image suivante montre la configuration Spring Initializr recommandée pour cet échantillon de projet.

    Capture d’écran de la page Spring Initializr montrant les paramètres recommandés.

    Cet exemple utilise Java version 8. Si vous souhaitez utiliser Java version 11, modifiez l’option sous les métadonnées du projet.

  2. Sélectionnez Générer quand toutes les dépendances sont définies.

  3. Téléchargez et décompressez le package, puis créez un contrôleur web pour une application web. Ajoutez le fichier src/main/java/com/example/hellospring/HelloController.java avec le contenu suivant :

    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!";
        }
    
    }
    

Créer des applications Spring localement

Pour générer le projet à l’aide de Maven, exécutez les commandes suivantes :

cd hellospring
mvn clean package -DskipTests -Denv=cloud

La compilation du projet prend de quelques minutes. Une fois l’opération terminée, vous devez avoir des fichiers JAR individuels pour chaque service dans leurs dossiers respectifs.

Provisionner une instance d’Azure Spring Apps

La procédure suivante crée une instance d’Azure Spring Apps en utilisant le portail Azure.

  1. Sous un nouvel onglet, ouvrez le portail Azure.

  2. Dans la zone de recherche en haut, recherchez Azure Spring Apps.

  3. Sélectionnez Azure Spring Apps dans les résultats.

    Capture d’écran du Portail Azure affichant le service Azure Spring Apps dans les résultats de la recherche.

  4. Dans la page Azure Spring Apps, sélectionnez Créer.

    Capture d’écran du Portail Azure affichant une ressource Azure Spring Apps avec le bouton Créer surligné.

  5. Remplissez le formulaire dans la page Créer Azure Spring Apps. Tenez compte des recommandations suivantes :

    • Abonnement: Sélectionnez l’abonnement à facturer pour cette ressource.
    • Groupe de ressources : Une bonne pratique consiste à créer des groupes de ressources pour les nouvelles ressources. Vous allez utiliser ce groupe de ressources lors d’étapes ultérieures en tant que <nom du groupe de ressources>.
    • Détails/Nom du service : spécifiez le <Nom de l’instance de service>. Le nom doit comporter entre 4 et 32 caractères, et contenir uniquement des lettres minuscules, des chiffres et des traits d’union. Le premier caractère du nom du service doit être une lettre, et le dernier doit être une lettre ou un chiffre.
    • Emplacement : Sélectionnez la région pour votre instance de service.

    Capture d’écran du Portail Azure affichant la page Créer d’Azure Spring Apps.

  6. Sélectionnez Examiner et créer.

Générer des configurations et déployer sur Azure Spring Apps

Pour générer des configurations et déployer l’application, procédez comme suit :

  1. Exécutez la commande suivante à partir du dossier racine hellospring, qui contient le fichier POM. Si vous vous êtes déjà connecté avec l’interface de ligne de commande Azure, la commande sélectionne automatiquement les informations d’identification. Sinon, la commande vous invite à recevoir des instructions de connexion. Pour plus d’informations, consultez Authentication dans le référentiel azure-maven-plugins sur GitHub.

    mvn com.microsoft.azure:azure-spring-apps-maven-plugin:1.10.0:config
    

    Il vous sera demandé de sélectionner les éléments suivants :

    • ID d’abonnement : abonnement que vous avez utilisé pour créer une instance Azure Spring Apps.
    • Instance de service : nom de votre instance Azure Spring Apps.
    • Nom de l’application : nom d’application de votre choix ou utilisez la valeur par défaut artifactId.
    • Point de terminaison public - True pour exposer l’application à l’accès public ; sinon, False.
  2. Vérifiez que l’élément appName du fichier POM a la bonne valeur. La partie pertinente du fichier POM doit ressembler à l’exemple suivant.

    <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>
    

    Le fichier POM contient désormais les dépendances et les configurations du plug-in.

  3. Déployez l’application en utilisant la commande suivante.

    mvn azure-spring-apps:deploy
    

Vérifier les services

Une fois le déploiement terminé, vous pouvez accéder à l’application sur https://<service instance name>-hellospring.azuremicroservices.io/.

Capture d’écran de l’application Hello Spring, telle qu’affichée dans le navigateur.

Nettoyer les ressources

Si vous prévoyez d’utiliser l’exemple d’application, vous pouvez conserver les ressources créées. Si vous n’en avez plus besoin, supprimez le groupe de ressources contenant votre instance Azure Spring Apps. 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 ..."

Étapes suivantes