Nasazení webové aplikace Helidon do služby Aplikace Azure Service pomocí Mavenu

V tomto rychlém startu použijete modul plug-in Maven pro Aplikace Azure Service Web Apps k nasazení aplikace Helidon do služby Aplikace Azure Service v Linuxu. Pokud chcete sloučit závislosti aplikace, modul runtime a konfiguraci do jediného nasaditelného artefaktu, můžete zvolit nasazení Java SE pomocí Tomcatu a souborů WAR.

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Požadavky

Přihlášení k Azure CLI

Nejjednodušším a nejsnadnějším způsobem, jak získat modul plug-in Maven, který nasazuje aplikaci Helidon, je použití Azure CLI.

Přihlaste se k účtu Azure pomocí Azure CLI:

az login

Postupujte podle pokynů a dokončete proces přihlášení.

Vytvoření ukázkové aplikace z MicroProfile Starter

V této části vytvoříte aplikaci Helidon a otestujete ji místně.

  1. Otevřete webový prohlížeč a přejděte na úvodní web MicroProfile.

    Snímek obrazovky s vybranou možností MicroProfile Starter s vybraným modulem runtime Helidon

  2. Zadejte nebo vyberte následující pole.

    Pole Hodnota
    groupId com.microsoft.azure.samples.helidon
    artifactId helidon-hello-azure
    Verze MicroProfile MP 3.2
    Verze Java SE Java 11
    MicroProfile Runtime Helidon
    Příklady pro specifikace Metriky, OpenAPI
  3. Vyberte STÁHNOUT a stáhněte projekt.

  4. Rozbalte archivní soubor; Například:

    unzip helidon-hello-azure.zip
    
  5. Nebo můžete projekt vytvořit pomocí následujícího příkazu:

    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
    
  6. Přejděte do adresáře pro dokončený projekt; například:

    cd helidon-hello-azure/
    
  7. Zkompilujte soubor JAR pomocí Mavenu. Například:

    mvn clean package
    
  8. Vytvořenou webovou aplikaci spusťte pomocí Mavenu. Například:

    java -jar target/helidon-hello-azure.jar
    
  9. Otestujte webovou aplikaci tak, že ji místně otevřete ve webovém prohlížeči. Pokud máte k dispozici nástroj curl, můžete například použít následující příkaz:

    curl http://localhost:8080/greet
    
  10. Měla by se zobrazit následující zpráva: Hello World

Konfigurace modulu plug-in Maven pro Azure App Service

V této části nakonfigurujete projekt Helidon pom.xml soubor tak, aby maven mohl nasadit aplikaci do služby Aplikace Azure Service v Linuxu.

  1. Otevřete soubor pom.xml v editoru kódu.

  2. <build> V části souboru pom.xml vložte do značky <plugins> následující <plugin> položku.

    <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>
    
  3. Pak můžete nasazení nakonfigurovat spuštěním následujícího příkazu Mavenu:

    mvn azure-webapp:config
    

    Po zobrazení výzvy vyberte následující možnosti:

    Vstupní pole Vstupní/výběrové hodnoty
    Definujte hodnotu pro OS(Default: Linux): 1. linux
    Definovat hodnotu pro javaVersion(Výchozí: Java 8): 1. Java 11
    Confirm (Y/N) y

    Tento příkaz vytvoří výstup podobný následujícímu příkladu:

    [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] ------------------------------------------------------------------------
    
  4. <appSettings> Přidejte oddíl do oddílu <configuration> , PORTWEBSITES_PORTa WEBSITES_CONTAINER_START_TIME_LIMIT. <include>/libs/*.jar</include> Přidejte prostředky v nasazení.

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

Nasadit aplikaci do Azure

Jakmile nakonfigurujete všechna nastavení v předchozích částech tohoto článku, jste připraveni nasadit webovou aplikaci do Azure. Můžete to udělat podle následujících kroků:

  1. Pokud jste provedli nějaké změny v souboru pom.xml, na příkazovém řádku nebo v okně terminálu, které jste používali dříve, znovu zkompilujte soubor JAR pomocí Mavenu. Například:

    mvn clean package
    
  2. Nasaďte webovou aplikaci do Azure pomocí Mavenu. Například:

    mvn azure-webapp:deploy
    

Maven nasadí vaši webovou aplikaci do Azure. Pokud webová aplikace nebo plán webové aplikace ještě neexistují, vytvoří se za vás. Může trvat několik minut, než bude webová aplikace viditelná na adrese URL zobrazené ve výstupu. Ve webovém prohlížeči přejděte na příslušnou adresu URL. Měla by se zobrazit zpráva: Hello World

Po nasazení webu ho můžete spravovat prostřednictvím webu Azure Portal.

Vaše webová aplikace bude uvedená ve službě App Services.

Ke své webové aplikaci se dostanete tak , že vyberete Procházet na stránce Přehled vaší webové aplikace.

Pomocí stejného příkazu cURL jako předtím/data/hello pomocí adresy URL webové aplikace místo portálu localhostověřte, že nasazení proběhlo úspěšně. Měla by se zobrazit následující zpráva: Hello World

Potvrzení streamu protokolu ze spuštěné služby App Service

Zobrazí se (nebo "tail") protokoly ze spuštěné služby App Service. Všechna volání console.log v kódu lokality se zobrazí v terminálu.

az webapp log tail \
    --resource-group microprofile \
    --name helidon-hello-azure-1600998900939

Snímek obrazovky okna terminálu s výstupem protokolu

Vyčištění prostředků

Pokud už nasazené prostředky Azure nepotřebujete, vyčistěte je odstraněním skupiny prostředků.

  • Na webu Azure Portal vyberte v nabídce nalevo Skupina prostředků.
  • Do pole Filtrovat podle názvu zadejte mikroprofile, skupina prostředků vytvořená v tomto kurzu by měla mít tuto předponu.
  • Vyberte skupinu prostředků, kterou jste vytvořili v tomto kurzu.
  • V horní nabídce vyberte Odstranit skupinu prostředků.

Další kroky

Další informace o MicroProfile a Azure najdete v centru dokumentace k MicroProfile v Azure.

Další materiály

Další informace o různých technologiích popsaných v tomto článku najdete v následujících článcích: