Déployer une application web Payara Micro sur Azure App Service avec Maven
Dans ce guide de démarrage rapide, vous allez utiliser le plug-in Maven pour Azure App Service Web Apps afin de déployer une application Payara Micro dans Azure App Service sur Linux. Il est préférable de choisir un déploiement Java SE plutôt que des fichiers Tomcat et WAR si vous souhaitez consolider les dépendances, le runtime et la configuration de votre application en un seul artefact déployable.
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
Prérequis
- Azure CLI, en local ou via Azure Cloud Shell.
- Un kit de développement Java (JDK) pris en charge. Pour plus d’informations sur les JDK disponibles pour le développement sur Azure, consultez Prise en charge de Java sur Azure et Azure Stack.
- Apache Maven version 3.
Connectez-vous à Azure CLI
La façon la plus simple et la plus rapide pour que le plug-in Maven déploie votre application Payara Micro est d’utiliser Azure CLI.
Connectez-vous à votre compte Azure à l’aide de l’interface de ligne de commande Azure :
az login
Suivez les instructions pour terminer le processus de connexion.
Créer un exemple d’application à partir de MicroProfile Starter
Dans cette section, vous allez créer une application Payara Micro et la tester localement.
Ouvrez un navigateur web et accédez au site de MicroProfile Starter.
Entrez ou sélectionnez un champ comme indiqué ci-dessous.
Champ Valeur groupId com.microsoft.azure.samples.payaramicro artifactId payaramicro-hello-azure Version de MicroProfile MP 3.2 Version Java SE Java 11 Runtime MicroProfile.io PayaraMicro Exemples de spécifications Métriques, OpenAPI Sélectionnez TÉLÉCHARGER pour télécharger le projet.
Décompressez le fichier d’archive ; par exemple :
unzip payaraMicro-hello-azure.zip
Exécuter l’application dans un environnement local
Accédez au répertoire du projet terminé. Par exemple :
cd payaramicro-hello-azure/
Générez le projet à l’aide de Maven ; par exemple :
mvn clean package
Exécutez le projet, par exemple :
java -jar target/payaramicro-hello-azure-microbundle.jar
Testez l’application web en y accédant localement via un navigateur web. Par exemple, vous pouvez utiliser la commande suivante si curl est disponible :
curl http://localhost:8080/data/hello
Le message suivant doit s’afficher : Hello World
Configurer le plug-in Maven pour Azure App Service
Dans cette section, vous allez configurer le fichier pom.xml du projet Payara Micro pour que Maven puisse déployer l’application dans Azure App Service sur Linux.
Ouvrez le fichier pom.xml dans un éditeur de code.
Dans la section
<build>
du fichier pom.xml, ajoutez l’entrée<plugin>
suivante dans la balise<plugins>
.<build> <finalName>payaramicro-hello-azure</finalName> <plugins> <plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>1.10.0</version> </plugin> </plugins> </build>
Vous pouvez ensuite configurer le déploiement en exécutant la commande Maven suivante :
mvn azure-webapp:config
Sélectionnez les options suivantes quand vous y êtes invité :
Champ d’entrée Entrer/Sélectionner une valeur Définir la valeur du système d’exploitation (par défaut : Linux) : 1. linux Définir la valeur de javaVersion(Par défaut : Java 8) : 1. Java 11 Définir la valeur de runtimeStack(Par défaut : TOMCAT 8.5) : TOMCAT 8.5 Confirmez (O/N) y [! REMARQUE] Même si nous n’utilisons pas Tomcat, sélectionnez-le
TOMCAT 8.5
pour l’instant. Pendant la configuration détaillée, vous allez modifier la valeur àJava11
partir deTOMCAT 8.5
.Cette commande produit une sortie semblable à celle de l’exemple suivant :
[INFO] Scanning for projects... [INFO] [INFO] --< com.microsoft.azure.samples.payaramicro:payaramicro-hello-azure >--- [INFO] Building payaramicro-hello-azure 1.0-SNAPSHOT [INFO] --------------------------------[ war ]--------------------------------- [INFO] [INFO] --- azure-webapp-maven-plugin:1.10.0:config (default-cli) @ payaramicro-hello-azure --- Define value for OS(Default: Linux): 1. linux [*] 2. windows 3. docker Enter index to use: Define value for javaVersion(Default: Java 8): 1. Java 11 2. Java 8 [*] Enter index to use: 1 Define value for runtimeStack(Default: TOMCAT 8.5): 1. TOMCAT 9.0 2. TOMCAT 8.5 [*] Enter index to use: Please confirm webapp properties AppName : payaramicro-hello-azure-1601009217863 ResourceGroup : payaramicro-hello-azure-1601009217863-rg Region : westeurope PricingTier : PremiumV2_P1v2 OS : Linux RuntimeStack : TOMCAT 8.5-java11 Deploy to slot : false Confirm (Y/N)? : y [INFO] Saving configuration to pom. [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 22.302 s [INFO] Finished at: 2020-09-25T13:47:11+09:00 [INFO] ------------------------------------------------------------------------
Modifiez l’entrée
runtime
TOMCAT 8.5
de versjava11
et l’entréedeployment
à partir*.jar
de*.war
. Ensuite, ajoutez la<appSettings>
section à la<configuration>
section dePORT
,WEBSITES_PORT
etWEBSITES_CONTAINER_START_TIME_LIMIT
. Votre entréeazure-webapp-maven-plugin
XML doit ressembler à l’exemple suivant :<plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>1.9.1</version> <configuration> <schemaVersion>V2</schemaVersion> <resourceGroup>microprofile</resourceGroup> <appName>payaramicro-hello-azure-1591860934798</appName> <pricingTier>P1v2</pricingTier> <region>japaneast</region> <runtime> <os>linux</os> <javaVersion>java11</javaVersion> <webContainer>java11</webContainer> </runtime> <appSettings> <property> <name>PORT</name> <value>8080</value> </property> <property> <name>WEBSITES_PORT</name> <value>8080</value> </property> <property> <name>WEBSITES_CONTAINER_START_TIME_LIMIT</name> <value>600</value> </property> </appSettings> <deployment> <resources> <resource> <directory>${project.basedir}/target</directory> <includes> <include>*.jar</include> </includes> </resource> </resources> </deployment> </configuration> </plugin>
Déploiement de l’application dans Azure
Une fois que vous avez configuré tous les paramètres dans les sections précédentes de cet article, vous êtes prêt à déployer votre application web sur Azure. Pour cela, utilisez les étapes suivantes :
À partir de l’invite de commandes ou de la fenêtre de terminal que vous utilisiez précédemment, régénérez le fichier JAR à l’aide de Maven si vous avez apporté des modifications au fichier pom.xml ; par exemple :
mvn clean package
Déployez votre application web dans Azure à l’aide de Maven ; par exemple :
mvn azure-webapp:deploy
Si vous avez réussi le déploiement, la sortie suivante s’affiche.
[INFO] Successfully deployed the artifact to https://payaramicro-hello-azure-1601009217863.azurewebsites.net
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:58 min
[INFO] Finished at: 2020-09-25T13:55:13+09:00
[INFO] ------------------------------------------------------------------------
Maven déploie votre application web sur Azure. Si l’application web ou le plan d’application web n’existe pas déjà, il est créé pour vous. Plusieurs minutes peuvent être nécessaires avant que l’application web ne soit visible à l’URL indiquée dans la sortie. Accédez à l’URL dans un navigateur web. Vous devez normalement voir l’écran suivant.
Une fois votre site web déployé, vous pouvez le gérer via le Portail Azure.
Votre application web est répertoriée dans le groupe de ressources microprofile .
Vous pouvez accéder à votre application web en sélectionnant Parcourir dans la page Vue d’ensemble de votre application web. Vérifiez que le déploiement a réussi et que son état est En cours d’exécution.
Confirmer le flux de journal à partir de l’application App Service en cours d’exécution
Vous pouvez voir les dernières lignes des journaux de l’instance App Service en cours d’exécution. Tous les appels à console.log
dans le code du site s’affichent dans le terminal.
az webapp log tail \
--resource-group microprofile \
--name payaramicro-hello-azure-1601009217863
Nettoyer les ressources
Lorsque vous n’en avez plus besoin, nettoyez les ressources Azure que vous avez déployées en supprimant le groupe de ressources.
- Dans le portail Azure, sélectionnez Groupe de ressources dans le menu de gauche.
- Entrez microprofile dans le champ Filtrer par nom. Le groupe de ressources créé dans ce tutoriel doit avoir ce préfixe.
- Sélectionnez le groupe de ressources créé dans ce tutoriel.
- Sélectionnez Supprimer le groupe de ressources dans le menu supérieur.
Étapes suivantes
Pour en savoir plus sur MicroProfile et Azure, rendez-vous sur le centre de documentation MicroProfile sur Azure.
Ressources supplémentaires
Pour plus d’informations sur les différentes technologies présentées dans cet article, consultez les articles suivants :