Partilhar via


Implantar um aplicativo Web Helidon no Serviço de Aplicativo do Azure com o Maven

Neste início rápido, você usa o plug-in Maven para Aplicativos Web do Serviço de Aplicativo do Azure implantar um aplicativo Helidon no Serviço de Aplicativo do Azure no Linux. Escolha a implementação Java SE em vez de Tomcat e arquivos WAR quando quiser consolidar as dependências, o tempo de execução e a configuração do seu aplicativo num único artefato implementável.

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

Pré-requisitos

Entrar na CLI do Azure

A maneira mais simples e fácil de fazer com que o plug-in Maven implante seu aplicativo Helidon é usando a CLI do Azure.

Entre na sua conta do Azure usando o seguinte comando na 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ê cria um aplicativo Helidon e o testa localmente.

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

    Captura de tela mostrando o MicroProfile Starter com o tempo de execução do Helidon selecionado.

  2. Insira ou selecione o campo da seguinte forma.

    Campo Valor
    ID de grupo com.microsoft.azure.samples.helidon
    artifactId helidon-olá-azure
    Versão do MicroProfile MP 3,2
    Versão Java SE Java 11
    Tempo de execução do MicroProfile Hélidon
    Exemplos de especificações Métricas, OpenAPI
  3. Selecione DOWNLOAD para baixar o projeto.

  4. Descompacte o arquivo. Você pode usar a linha de comando, como no exemplo a seguir:

    unzip helidon-hello-azure.zip
    
  5. Como alternativa, você pode criar o projeto usando o seguinte comando:

    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. Altere o diretório para o projeto concluído usando o seguinte comando:

    cd helidon-hello-azure/
    
  7. Crie o arquivo JAR usando o Maven usando o seguinte comando:

    mvn clean package
    
  8. Depois que o aplicativo Web for criado, inicie-o usando o seguinte comando Maven:

    java -jar target/helidon-hello-azure.jar
    
  9. Teste o aplicativo Web navegando até ele localmente usando um navegador da Web. Por exemplo, você pode usar o seguinte comando se tiver curl disponível:

    curl http://localhost:8080/greet
    
  10. Você verá a seguinte mensagem exibida: Hello World

Configurar o plug-in Maven para o Serviço de Aplicativo do Azure

Nesta seção, você configura o arquivo de pom.xml do projeto Helidon 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. Na seção <build> do arquivo pom.xml, insira a seguinte entrada de <plugin> dentro da marca <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>
    
  3. Configure a implantação usando 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 o valor para javaVersion (Padrão: Java 8): 1. Java 11
    Confirmar (S/N) y

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

    [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. Adicione a seção <appSettings> à seção <configuration> de PORT, WEBSITES_PORTe WEBSITES_CONTAINER_START_TIME_LIMIT. Adicione <include>/libs/*.jar</include> aos recursos na implantação.

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

Implantar o aplicativo 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 fazer isso, use as seguintes etapas:

  1. No prompt de comando ou na janela do terminal que você estava usando anteriormente, reconstrua o arquivo JAR usando o Maven se tiver feito alterações no arquivo pom.xml usando o seguinte comando:

    mvn clean package
    
  2. Implante seu aplicativo Web no Azure usando o Maven usando o seguinte comando:

    mvn azure-webapp:deploy
    

O Maven implanta seu aplicativo Web no Azure. Se o plano de aplicativo web ou a aplicação web ainda não existir, será criada para si. Pode levar alguns minutos até que o aplicativo Web fique visível na URL mostrada na saída. Navegue até a URL em um navegador da Web. Deverá ver a mensagem apresentada: Hello World

Quando seu aplicativo Web é implantado, você pode gerenciá-lo por meio do portal do Azure.

Seu aplicativo Web está listado em Serviços de Aplicativo.

Você pode aceder ao seu aplicativo Web na página Visão Geral, selecionando Procurar.

Verifique se a implantação foi bem-sucedida usando o comando /greet cURL como antes, usando a URL do aplicativo Web do portal do Azure em vez de localhost. Você verá a seguinte mensagem exibida: Hello World

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

Você pode usar o comando a seguir para exibir - ou de cauda - os logs do Serviço de Aplicativo em execução. Todas as chamadas para console.log no código do site são exibidas no terminal.

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

Captura de tela da janela do terminal mostrando a saída do log.

Limpar recursos

Quando os recursos do Azure não forem mais necessários, limpe os recursos implantados excluindo o grupo de recursos.

  1. No portal do Azure, selecione grupo de recursos no menu.
  2. Insira microperfil no campo Filtro por nome . O grupo de recursos criado neste tutorial deve ter esse prefixo.
  3. Selecione o grupo de recursos criado neste tutorial.
  4. Selecione Excluir grupo de recursos no menu.

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 discutidas neste artigo, consulte os seguintes artigos: