Implantar um Payara Micro Web App no Serviço de Aplicativo do Azure com o Maven

Neste início rápido, você usará o plug-in Maven para Aplicativos Web do Serviço de Aplicativo do Azure para implantar um aplicativo Payara Micro no Serviço de Aplicativo do Azure no Linux. Deverá escolher a implementação Java SE em vez de ficheiros Tomcat e WAR se quiser consolidar as dependências, o runtime e a configuração da sua aplicação num único artefacto implementável.

Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.

Pré-requisitos

Iniciar sessão na CLI do Azure

A maneira mais simples e fácil de obter o plug-in Maven implantando seu aplicativo PayaraMicro é usando a CLI do Azure.

Inicie sessão na sua conta do Azure com a CLI do Azure:

az login

Siga as instruções para concluir o processo de início de sessão.

Criar aplicativo de exemplo a partir do MicroProfile Starter

Nesta seção, você criará um aplicativo PayaraMicro e o testará localmente.

  1. Abra um navegador da Web e navegue até o site MicroProfile Starter .

    Captura de tela mostrando o MicroProfile Starter com Payara Micro runtime selecionado.

  2. Insira ou selecione o campo da seguinte forma.

    Campo Value
    groupId com.microsoft.azure.samples.payaramicro
    artifactId payaramicro-hello-azure
    Versão do MicroProfile MP 3,2
    Versão Java SE Java 11
    Tempo de execução do MicroProfile PayaraMicro
    Exemplos de especificações Métricas, OpenAPI
  3. Selecione DOWNLOAD para baixar o projeto.

  4. Descompacte o arquivo morto; Por exemplo:

    unzip payaraMicro-hello-azure.zip
    

Execute o aplicativo no ambiente local

  1. Mude o diretório para o projeto concluído. Por exemplo:

    cd payaramicro-hello-azure/
    
  2. Construir o projeto usando Maven; Por exemplo:

    mvn clean package
    
  3. Executar o projeto; Por exemplo:

    java -jar target/payaramicro-hello-azure-microbundle.jar
    
  4. Teste a aplicação Web ao navegar localmente para a mesma com um browser. Por exemplo, pode utilizar o seguinte comando se tiver o comando curl disponível:

    curl http://localhost:8080/data/hello
    
  5. Você deve ver a seguinte mensagem exibida: Hello World

Configurar o Plug-in do Maven para o Serviço de Aplicações do Azure

Nesta seção, você configurará o arquivo de pom.xml do projeto PayaraMicro para que o Maven possa implantar o aplicativo no Serviço de Aplicativo do Azure no Linux.

  1. Abra o arquivo pom.xml em um editor de código.

  2. <build> Na seção do arquivo pom.xml, insira a seguinte <plugin> entrada dentro da <plugins> tag .

    <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>
    
  3. Em seguida, você pode configurar a implantação executando o seguinte comando Maven:

    mvn azure-webapp:config
    

    Selecione as seguintes opções quando solicitado:

    Campo de entrada Valor de entrada/seleção
    Defina o valor para OS(Padrão: Linux): 1. Linux
    Defina value for javaVersion(Default: Java 8): 1. Java 11
    Defina o valor para runtimeStack(Padrão: TOMCAT 8.5): TOMCAT 8,5
    Confirme (S/N) S

    [! NOTA] Mesmo que não usemos o Tomcat, selecione TOMCAT 8.5 neste momento. Durante a configuração detalhada, você modificará o valor de TOMCAT 8.5 para Java11.

    Este comando produz uma saída semelhante ao exemplo a seguir:

    [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] ------------------------------------------------------------------------
    
  4. Modifique a runtime entrada de TOMCAT 8.5 para java11 e a deployment entrada de *.war para *.jar. Em seguida, adicione a <appSettings> seção à <configuration> seção de PORT, e .WEBSITES_CONTAINER_START_TIME_LIMITWEBSITES_PORT Sua entrada XML para azure-webapp-maven-plugin deve ser semelhante ao exemplo a seguir:

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

Implementar a aplicação no Azure

Depois de definir todas as configurações nas seções anteriores deste artigo, você estará pronto para implantar seu aplicativo Web no Azure. Para fazê-lo, siga os seguintes passos:

  1. A partir da janela de terminal ou da linha de comandos que estava a utilizar anteriormente, recrie o ficheiro JAR com o Maven se tiver feito alterações ao ficheiro pom.xml; por exemplo:

    mvn clean package
    
  2. Implemente a sua aplicação Web com recurso ao Maven; por exemplo:

    mvn azure-webapp:deploy
    

Se você tiver conseguido a implantação, verá a saída a seguir.

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

O Maven implantará seu aplicativo Web no Azure. Se o plano do aplicativo Web ou do aplicativo Web ainda não existir, ele será criado para você. A apresentação da aplicação Web no URL mostrado na saída poderá demorar alguns minutos. Aceda ao URL num browser. Você deve ver a tela a seguir.

Screenshot do navegador web mostrando a página inicial da Payara Micro.

Quando sua Web tiver sido implantada, você poderá gerenciá-la por meio do portal do Azure.

Seu aplicativo Web será listado no grupo de recursos de microperfil .

Você pode acessar seu aplicativo Web selecionando Procurar na página Visão geral do seu aplicativo Web. Verifique se a implantação foi bem-sucedida e está em execução.

Confirmar o fluxo de log do Serviço de Aplicativo em execução

Você pode ver (ou "cauda") os logs do Serviço de Aplicativo em execução. Todas as chamadas no console.log código do site são exibidas no terminal.

az webapp log tail \
    --resource-group microprofile \
    --name payaramicro-hello-azure-1601009217863

Captura de tela da janela do terminal mostrando o fluxo de log.

Clean up resources (Limpar recursos)

Quando os recursos do Azure já não forem necessários, limpe os recursos implementados ao eliminar o grupo de recursos.

  • No portal do Azure, selecione Grupo de recursos no menu à esquerda.
  • Insira o microperfil no campo Filtrar por nome, o grupo de recursos criado neste tutorial deve ter esse prefixo.
  • Selecione o grupo de recursos criado neste tutorial.
  • Selecione Eliminar grupo de recursos no menu superior.

Próximos passos

Para saber mais sobre o MicroProfile e o Azure, continue para o MicroProfile no centro de documentação do Azure.

Recursos adicionais

Para obter mais informações sobre as várias tecnologias mencionadas neste artigo, consulte os seguintes artigos: