Distribuera en Helidon-webbapp till Azure App Service med Maven
I den här snabbstarten använder du Plugin-programmet Maven för Azure App Service Web Apps för att distribuera ett Helidon-program till Azure App Service på Linux. Du ska välja Java SE-distribution i stället för Tomcat- och WAR-filer när du vill konsolidera appens beroenden, runtime och konfiguration i en enda distribuerbar artefakt.
Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.
Förutsättningar
- Azure CLI, antingen lokalt eller via Azure Cloud Shell.
- Ett Java Development Kit (JDK) som stöds. Mer information om de JDK:er som är tillgängliga för användning när du utvecklar i Azure finns i Java-stöd i Azure och Azure Stack.
- Apache Maven, version 3.
Logga in på Azure CLI
Det enklaste och enklaste sättet att få Maven-plugin-programmet att distribuera ditt Helidon-program är att använda Azure CLI.
Logga in på ditt Azure-konto med hjälp av Azure CLI:
az login
Följ instruktionerna för att slutföra inloggningsprocessen.
Skapa exempelapp från MicroProfile Starter
I det här avsnittet skapar du ett Helidon-program och testar det lokalt.
Öppna en webbläsare och gå till webbplatsen MicroProfile Starter .
Ange eller Välj fältet på följande sätt.
Fält Värde groupId com.microsoft.azure.samples.helidon artifactId helidon-hello-azure MicroProfile-version MP 3.2 Java SE-version Java 11 MicroProfile Runtime Helidon Exempel för specifikationer Mått, OpenAPI Välj LADDA NED för att ladda ned projektet.
Packa upp arkivfilen. till exempel:
unzip helidon-hello-azure.zip
Eller så kan du skapa projektet med följande kommando:
mvn -U archetype:generate -DinteractiveMode=false \ -DarchetypeGroupId=io.helidon.archetypes \ -DarchetypeArtifactId=helidon-quickstart-se \ -DarchetypeVersion=2.0.0 \ -DgroupId=com.microsoft.azure.samples.helidon \ -DartifactId=helidon-hello-azure \ -Dpackage=com.microsoft.azure.samples.helidon
Byt katalog till det slutförda projektet, till exempel:
cd helidon-hello-azure/
Bygg JAR-filen med hjälp av Maven, till exempel:
mvn clean package
När webbappen har skapats startar du webbappen med Maven, till exempel:
java -jar target/helidon-hello-azure.jar
Testa webbappen genom att bläddra till den lokalt med hjälp av en webbläsare. Du kan till exempel använda följande kommando om du har Curl tillgängligt:
curl http://localhost:8080/greet
Följande meddelande bör visas: Hello World
Konfigurera Maven-pluginet för Azure App Service
I det här avsnittet konfigurerar du Helidon-projektet pom.xml-filen så att Maven kan distribuera appen till Azure App Service på Linux.
Öppna filen pom.xml i en kodredigerare.
I avsnittet
<build>
i filen pom.xml infogar du följande<plugin>
post i taggen<plugins>
.<build> <finalName>helidon-hello-azure</finalName> <plugins> <plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>1.10.0</version> </plugin> </plugins> </build>
Sedan kan du konfigurera distributionen och köra följande Maven-kommando:
mvn azure-webapp:config
Välj följande alternativ när du uppmanas att göra det:
Indatafält Indata/välj värde Definiera värde för OS (standard: Linux): 1. linux Definiera värdet för javaVersion (standard: Java 8): 1. Java 11 Confirm (Y/N) (Bekräfta (J/N)) y Det här kommandot genererar utdata som liknar följande exempel:
[INFO] Scanning for projects... [INFO] [INFO] ------< com.microsoft.azure.samples.helidon:helidon-hello-azure >------- [INFO] Building myproject 1.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- azure-webapp-maven-plugin:1.10.0:config (default-cli) @ helidon-hello-azure --- Define value for OS(Default: Linux): 1. linux [*] 2. windows 3. docker Enter index to use: 1 Define value for javaVersion(Default: Java 8): 1. Java 11 2. Java 8 [*] Enter index to use: 1 Please confirm webapp properties AppName : helidon-hello-azure-1600998900939 ResourceGroup : helidon-hello-azure-1600998900939-rg Region : westeurope PricingTier : PremiumV2_P1v2 OS : Linux RuntimeStack : JAVA 11-java11 Deploy to slot : false Confirm (Y/N)? : y [INFO] Saving configuration to pom. [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 02:44 min [INFO] Finished at: 2020-09-25T10:57:35+09:00 [INFO] ------------------------------------------------------------------------
Lägg till avsnittet
<appSettings>
i<configuration>
avsnittetPORT
,WEBSITES_PORT
ochWEBSITES_CONTAINER_START_TIME_LIMIT
.<include>/libs/*.jar</include>
Lägg till i resurserna i distributionen.<plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>1.10.0</version> <configuration> <schemaVersion>V2</schemaVersion> <resourceGroup>microprofile</resourceGroup> <appName>helidon-hello-azure-1591663020899</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> <include>/libs/*.jar</include> </includes> </resource> </resources> </deployment> </configuration>
distribuera appen till Azure
När du har konfigurerat alla inställningar i föregående avsnitt i den här artikeln är du redo att distribuera webbappen till Azure. Gör det med hjälp av följande steg:
Från kommandotolken eller terminalfönstret som du använde tidigare kan du återskapa JAR-filen med hjälp av Maven om du har gjort några ändringar i pom.xml-filen, till exempel:
mvn clean package
Distribuera din webbapp till Azure med hjälp av Maven, till exempel:
mvn azure-webapp:deploy
Maven distribuerar din webbapp till Azure. Om webbappen eller webbappsplanen inte redan finns skapas den åt dig. Det kan ta några minuter innan webbappen visas på den URL som visas i utdata. Gå till URL:en i en webbläsare. Meddelandet bör visas: Hello World
När din webb har distribuerats kan du hantera den via Azure-portalen.
Din webbapp visas i App Services.
Du kan komma åt din webbapp genom att välja Bläddra på sidan Översikt för din webbapp.
Kontrollera att distributionen lyckades med samma cURL-kommando som tidigare(/data/hello
), med hjälp av localhost
webbappens URL från portalen i stället för . Följande meddelande bör visas: Hello World
Bekräfta loggströmmen från apptjänsten som körs
Du kan se (eller "tail") loggarna från apptjänsten som körs. Alla anrop till console.log
i platskoden visas i terminalen.
az webapp log tail \
--resource-group microprofile \
--name helidon-hello-azure-1600998900939
Rensa resurser
När Azure-resurserna inte längre behövs rensar du de resurser som du har distribuerat genom att ta bort resursgruppen.
- Från Azure-portalen väljer du Resursgrupp från den vänstra menyn.
- Ange mikroprofil i fältet Filtrera efter namn . Resursgruppen som skapades i den här självstudien bör ha det här prefixet.
- Välj den resursgrupp som skapats i den här självstudien.
- Välj Ta bort resursgrupp från menyn längst upp.
Nästa steg
Om du vill veta mer om MicroProfile och Azure fortsätter du till Dokumentationscentret för MicroProfile i Azure.
Ytterligare resurser
Mer information om de olika tekniker som beskrivs i den här artikeln finns i följande artiklar: