Guia de início rápido: criar um aplicativo Java no Serviço de Aplicativo do Azure

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 Web Java em um servidor Linux Tomcat no Serviço de Aplicativo do Azure. O Serviço de Aplicativo fornece um serviço de hospedagem de aplicativo Web altamente escalável e auto-corrigido. Use as guias para alternar entre as instruções do Tomcat, JBoss ou servidor incorporado (Java SE).

Screenshot of Maven Hello World web app running in Azure App Service.

Se o Maven não for sua ferramenta de desenvolvimento preferida, confira nossos tutoriais semelhantes para desenvolvedores Java:

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

1 - Usar o Azure Cloud Shell

O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Você pode usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada em seu ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Ligação
Selecione Experimentar no canto superior direito de um código ou bloco de comandos. Selecionar Experimentar não copia automaticamente o código ou comando para o Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. Button to launch Azure Cloud Shell.
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. Screenshot that shows the Cloud Shell button in the Azure portal

Para usar o Azure Cloud Shell:

  1. Inicie o Cloud Shell.

  2. Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou comando.

  3. Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e Linux ou selecionando Cmd+Shift+V no macOS.

  4. Selecione Enter para executar o código ou comando.

2 - Criar um aplicativo Java

Execute o seguinte comando Maven no prompt do Cloud Shell para criar um novo aplicativo chamado helloworld:

mvn archetype:generate "-DgroupId=example.demo" "-DartifactId=helloworld" "-DarchetypeArtifactId=maven-archetype-webapp" "-DarchetypeVersion=1.4" "-Dversion=1.0-SNAPSHOT"

Em seguida, altere seu diretório de trabalho para a pasta do projeto:

cd helloworld

3 - Configurar o plugin Maven

O processo de implantação no Serviço de Aplicativo do Azure usa suas credenciais do Azure da CLI do Azure automaticamente. Se a CLI do Azure não estiver instalada localmente, o plug-in do Maven será autenticado com OAuth ou entrada no dispositivo. Para obter mais informações, consulte autenticação com plug-ins Maven.

Execute o comando Maven mostrado ao lado para configurar a implantação. Este comando ajuda você a configurar o sistema operacional do Serviço de Aplicativo, a versão Java e a versão do Tomcat.

mvn com.microsoft.azure:azure-webapp-maven-plugin:2.12.0:config
  1. Em Criar nova configuração de execução, digite Y e, em seguida , Enter.

  2. Em Definir valor para SO, digite 1 para Windows ou 2 para Linux e, em seguida , Enter.

  3. Para Define value for javaVersion, digite 3 for Java 17 e, em seguida , Enter.

  4. Em Define value for webContainer, digite 1 para Tomcat 10.0 e, em seguida , Enter.

  5. Em Define value for pricingTier, digite 9 para P1v2 e, em seguida , Enter.

  6. Em Confirmar, digite Y e, em seguida , Enter.

    Please confirm webapp properties
    AppName : helloworld-1690440759246
    ResourceGroup : helloworld-1690440759246-rg
    Region : centralus
    PricingTier : P1v2
    OS : Linux
    Java Version: Java 17
    Web server stack: Tomcat 10.0
    Deploy to slot : false
    Confirm (Y/N) [Y]: 
    [INFO] Saving configuration to pom.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  13.069 s
    [INFO] Finished at: 2023-07-27T06:52:48Z
    [INFO] ------------------------------------------------------------------------
    

Depois de confirmar as suas escolhas, o plug-in adiciona o elemento do plug-in acima e as definições necessárias ao ficheiro pom.xml do projeto que configura a sua aplicação Web para ser executada no Serviço de Aplicações do Azure.

A parte relevante do pom.xml arquivo deve ser semelhante ao exemplo a seguir.

<build>
    <plugins>
        <plugin>
            <groupId>com.microsoft.azure</groupId>
            <artifactId>>azure-webapp-maven-plugin</artifactId>
            <version>x.xx.x</version>
            <configuration>
                <schemaVersion>v2</schemaVersion>
                <resourceGroup>your-resourcegroup-name</resourceGroup>
                <appName>your-app-name</appName>
            ...
            </configuration>
        </plugin>
    </plugins>
</build>           

Você pode modificar as configurações do Serviço de Aplicativo diretamente no .pom.xml Algumas configurações comuns estão listadas na tabela a seguir:

Property Necessário Description Versão
<schemaVersion> false Especifique a versão do esquema de configuração. Os valores suportados são: v1, v2. 1.5.2
<subscriptionId> false Especifique o ID da assinatura. 0.1.0+
<resourceGroup> verdadeiro Grupo de Recursos do Azure para seu Aplicativo Web. 0.1.0+
<appName> verdadeiro O nome do seu aplicativo Web. 0.1.0+
<region> false Especifica a região para hospedar seu aplicativo Web; O valor padrão é Centralus. Todas as regiões válidas na seção Regiões suportadas. 0.1.0+
<pricingTier> false A camada de preço para seu aplicativo Web. O valor padrão é P1v2 para carga de trabalho de produção, enquanto B2 é o mínimo recomendado para desenvolvimento/teste Java. Para obter mais informações, consulte Preços do Serviço de Aplicativo 0.1.0+
<runtime> false A configuração do ambiente de tempo de execução. Para obter mais informações, consulte Detalhes de configuração. 0.1.0+
<deployment> false A configuração de implantação. Para obter mais informações, consulte Detalhes de configuração. 0.1.0+

Para obter a lista completa de configurações, consulte a documentação de referência do plugin. Todos os plug-ins do Azure Maven compartilham um conjunto comum de configurações. Para essas configurações, consulte Configurações comuns. Para configurações específicas do Serviço de Aplicativo, consulte Aplicativo Web do Azure: Detalhes de Configuração.

Tenha cuidado com os valores de <appName> e <resourceGroup> (helloworld-1690440759246 e helloworld-1690440759246-rg consequentemente na demonstração). Eles são usados mais tarde.

4 - Implante o aplicativo

Com toda a configuração pronta em seu arquivo pom.xml , você pode implantar seu aplicativo Java no Azure com um único comando.

mvn package azure-webapp:deploy

Quando a implantação estiver concluída, seu aplicativo estará pronto em http://<appName>.azurewebsites.net/ (http://helloworld-1690440759246.azurewebsites.net na demonstração). Abra o url com seu navegador da Web local, você deve ver

Screenshot of Maven Hello World web app running in Azure App Service.

Parabéns! Você implantou seu primeiro aplicativo Java no Serviço de Aplicativo.

5 - Limpar recursos

Nos passos anteriores, criou os recursos do Azure num grupo de recursos. Se você não precisar dos recursos no futuro, exclua o grupo de recursos do portal ou executando o seguinte comando no Cloud Shell:

az group delete --name <your resource group name; for example: helloworld-1690440759246-rg> --yes

Este comando pode demorar alguns minutos a ser executado.

Neste início rápido, você usa o plug-in Maven para Aplicativos Web do Serviço de Aplicativo do Azure para implantar um aplicativo Web Java com um servidor incorporado no Serviço de Aplicativo do Azure. O Serviço de Aplicativo fornece um serviço de hospedagem de aplicativo Web altamente escalável e auto-corrigido. Use as guias para alternar entre as instruções do Tomcat, JBoss ou servidor incorporado (Java SE).

O início rápido implanta um aplicativo Spring Boot, Tomcat incorporado ou aplicativo Quarkus usando o plug-in azure-webapp-maven-plugin .

Nota

O Serviço de Aplicativo pode hospedar aplicativos Spring. Para aplicativos Spring que exigem todos os serviços Spring, experimente o Azure Spring Apps .

Se o Maven não for sua ferramenta de desenvolvimento preferida, confira nossos tutoriais semelhantes para desenvolvedores Java:

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

1 - Usar o Azure Cloud Shell

O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Você pode usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada em seu ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Ligação
Selecione Experimentar no canto superior direito de um código ou bloco de comandos. Selecionar Experimentar não copia automaticamente o código ou comando para o Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. Button to launch Azure Cloud Shell.
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. Screenshot that shows the Cloud Shell button in the Azure portal

Para usar o Azure Cloud Shell:

  1. Inicie o Cloud Shell.

  2. Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou comando.

  3. Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e Linux ou selecionando Cmd+Shift+V no macOS.

  4. Selecione Enter para executar o código ou comando.

2 - Obtenha o aplicativo de exemplo

  1. Transfira e extraia o modelo de aplicação Web predefinido do Spring Boot. Este repositório é clonado para você quando você executa o comando spring boot new my-webappSpring CLI.

    git clone https://github.com/rd-1-2022/rest-service my-webapp
    
  2. Altere seu diretório de trabalho para a pasta do projeto:

    cd my-webapp
    

3 - Configurar o plugin Maven

O processo de implantação no Serviço de Aplicativo do Azure usa suas credenciais do Azure da CLI do Azure automaticamente. Se a CLI do Azure não estiver instalada localmente, o plug-in do Maven será autenticado com OAuth ou entrada no dispositivo. Para obter mais informações, consulte autenticação com plug-ins Maven.

Execute o comando Maven mostrado ao lado para configurar a implantação. Este comando ajuda você a configurar o sistema operacional do Serviço de Aplicativo, a versão Java e a versão do Tomcat.

mvn com.microsoft.azure:azure-webapp-maven-plugin:2.13.0:config
  1. Em Criar nova configuração de execução, digite Y e, em seguida , Enter.

  2. Para Definir valor para SO, digite 2 para Linux e, em seguida , Enter.

  3. Para Define value for javaVersion, digite 1 for Java 17 e, em seguida , Enter.

  4. Em Define value for pricingTier, digite 9 para P1v2 e, em seguida , Enter.

  5. Em Confirmar, digite Y e, em seguida , Enter.

    Please confirm webapp properties
    AppName : <generated-app-name>
    ResourceGroup : <generated-app-name>-rg
    Region : centralus
    PricingTier : P1v2
    OS : Linux
    Java Version: Java 17
    Web server stack: Java SE
    Deploy to slot : false
    Confirm (Y/N) [Y]: y
    [INFO] Saving configuration to pom.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  8.139 s
    [INFO] Finished at: 2023-07-26T12:42:48Z
    [INFO] ------------------------------------------------------------------------
    

Depois de confirmar suas escolhas, o plug-in adiciona o elemento de plug-in acima e as configurações necessárias ao arquivo do pom.xml seu projeto que configuram seu aplicativo Web para ser executado no Serviço de Aplicativo do Azure.

A parte relevante do pom.xml arquivo deve ser semelhante ao exemplo a seguir.

<build>
    <plugins>
        <plugin>
            <groupId>com.microsoft.azure</groupId>
            <artifactId>>azure-webapp-maven-plugin</artifactId>
            <version>x.xx.x</version>
            <configuration>
                <schemaVersion>v2</schemaVersion>
                <resourceGroup>your-resourcegroup-name</resourceGroup>
                <appName>your-app-name</appName>
            ...
            </configuration>
        </plugin>
    </plugins>
</build>           

Você pode modificar as configurações do Serviço de Aplicativo diretamente no .pom.xml Algumas configurações comuns estão listadas na tabela a seguir:

Property Necessário Description Versão
<schemaVersion> false Especifique a versão do esquema de configuração. Os valores suportados são: v1, v2. 1.5.2
<subscriptionId> false Especifique o ID da assinatura. 0.1.0+
<resourceGroup> verdadeiro Grupo de Recursos do Azure para seu Aplicativo Web. 0.1.0+
<appName> verdadeiro O nome do seu aplicativo Web. 0.1.0+
<region> false Especifica a região para hospedar seu aplicativo Web; O valor padrão é Centralus. Todas as regiões válidas na seção Regiões suportadas. 0.1.0+
<pricingTier> false A camada de preço para seu aplicativo Web. O valor padrão é P1v2 para carga de trabalho de produção, enquanto B2 é o mínimo recomendado para desenvolvimento/teste Java. Para obter mais informações, consulte Preços do Serviço de Aplicativo 0.1.0+
<runtime> false A configuração do ambiente de tempo de execução. Para obter mais informações, consulte Detalhes de configuração. 0.1.0+
<deployment> false A configuração de implantação. Para obter mais informações, consulte Detalhes de configuração. 0.1.0+

Para obter a lista completa de configurações, consulte a documentação de referência do plugin. Todos os plug-ins do Azure Maven compartilham um conjunto comum de configurações. Para essas configurações, consulte Configurações comuns. Para configurações específicas do Serviço de Aplicativo, consulte Aplicativo Web do Azure: Detalhes de Configuração.

Tenha cuidado com os valores de <appName> e <resourceGroup>. Eles são usados mais tarde.

4 - Implante o aplicativo

Com toda a configuração pronta em seu arquivo pom.xml , você pode implantar seu aplicativo Java no Azure com um único comando.

  1. Crie o arquivo JAR usando o seguinte comando:

    mvn clean package
    
  2. Implante no Azure usando o seguinte comando:

    mvn azure-webapp:deploy
    

    Se a implantação for bem-sucedida, você verá a seguinte saída:

    [INFO] Successfully deployed the artifact to https://<app-name>.azurewebsites.net
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  02:20 min
    [INFO] Finished at: 2023-07-26T12:47:50Z
    [INFO] ------------------------------------------------------------------------
    

Quando a implantação estiver concluída, seu aplicativo estará pronto em http://<appName>.azurewebsites.net/. Abra o URL http://<appName>.azurewebsites.net/greeting com seu navegador da Web local (observe o /greeting caminho) e você deve ver:

Screenshot of Spring Boot Hello World web app running in Azure App Service.

Parabéns! Você implantou seu primeiro aplicativo Java no Serviço de Aplicativo.

5 - Limpar recursos

Nos passos anteriores, criou os recursos do Azure num grupo de recursos. Se você não precisar dos recursos no futuro, exclua o grupo de recursos do portal ou executando o seguinte comando no Cloud Shell:

az group delete --name <your resource group name; for example: quarkus-hello-azure-1690375364238-rg> --yes

Este comando pode demorar um pouco a ser executado.

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 Web Java em um servidor Linux JBoss EAP no Serviço de Aplicativo do Azure. O Serviço de Aplicativo fornece um serviço de hospedagem de aplicativo Web altamente escalável e auto-corrigido. Use as guias para alternar entre as instruções do Tomcat, JBoss ou servidor incorporado (Java SE).

Screenshot of Maven Hello World web app running in Azure App Service.

Se o Maven não for sua ferramenta de desenvolvimento preferida, confira nossos tutoriais semelhantes para desenvolvedores Java:

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

1 - Usar o Azure Cloud Shell

O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Você pode usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada em seu ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Ligação
Selecione Experimentar no canto superior direito de um código ou bloco de comandos. Selecionar Experimentar não copia automaticamente o código ou comando para o Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. Button to launch Azure Cloud Shell.
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. Screenshot that shows the Cloud Shell button in the Azure portal

Para usar o Azure Cloud Shell:

  1. Inicie o Cloud Shell.

  2. Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou comando.

  3. Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e Linux ou selecionando Cmd+Shift+V no macOS.

  4. Selecione Enter para executar o código ou comando.

2 - Criar um aplicativo Java

Clone o aplicativo de demonstração da Pet Store.

git clone https://github.com/Azure-Samples/app-service-java-quickstart

Altere o diretório para o projeto de pet store concluído e crie-o.

Gorjeta

O petstore-ee7 exemplo requer Java 11 ou mais recente. O booty-duke-app-service projeto de exemplo requer Java 17. Se a sua versão instalada do Java for inferior a 17, execute a compilação a petstore-ee7 partir do diretório, em vez de no nível superior.

cd app-service-java-quickstart
git checkout 20230308
cd petstore-ee7
mvn clean install

Se você vir uma mensagem sobre estar no estado HEAD desanexado, essa mensagem é segura para ignorar. Como você não fará nenhuma confirmação do Git neste início rápido, o estado HEAD desanexado é apropriado.

3 - Configurar o plugin Maven

O processo de implantação no Serviço de Aplicativo do Azure usa suas credenciais do Azure da CLI do Azure automaticamente. Se a CLI do Azure não estiver instalada localmente, o plug-in do Maven será autenticado com OAuth ou entrada no dispositivo. Para obter mais informações, consulte autenticação com plug-ins Maven.

Execute o comando Maven mostrado ao lado para configurar a implantação. Este comando ajuda você a configurar o sistema operacional do Serviço de Aplicativo, a versão Java e a versão do Tomcat.

mvn com.microsoft.azure:azure-webapp-maven-plugin:2.12.0:config
  1. Em Criar nova configuração de execução, digite Y e, em seguida , Enter.

  2. Para Definir valor para SO, digite 2 para Linux e, em seguida , Enter.

  3. Para Define value for javaVersion, digite 2 for Java 11 e, em seguida , Enter.

  4. Para a opção webContainer , digite 1 para Jbosseap 7 e, em seguida , Enter.

  5. Em Define value for pricingTier, digite 1 para P1v3 e, em seguida , Enter.

  6. Em Confirmar, digite Y e, em seguida , Enter.

    Please confirm webapp properties
    AppName : petstoreee7-1690443003536
    ResourceGroup : petstoreee7-1690443003536-rg
    Region : centralus
    PricingTier : P1v3
    OS : Linux
    Java Version: Java 11
    Web server stack: Jbosseap 7
    Deploy to slot : false
    Confirm (Y/N) [Y]: 
    [INFO] Saving configuration to pom.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  19.914 s
    [INFO] Finished at: 2023-07-27T07:30:20Z
    [INFO] ------------------------------------------------------------------------
    

Depois de confirmar as suas escolhas, o plug-in adiciona o elemento do plug-in acima e as definições necessárias ao ficheiro pom.xml do projeto que configura a sua aplicação Web para ser executada no Serviço de Aplicações do Azure.

A parte relevante do pom.xml arquivo deve ser semelhante ao exemplo a seguir.

<build>
    <plugins>
        <plugin>
            <groupId>com.microsoft.azure</groupId>
            <artifactId>>azure-webapp-maven-plugin</artifactId>
            <version>x.xx.x</version>
            <configuration>
                <schemaVersion>v2</schemaVersion>
                <resourceGroup>your-resourcegroup-name</resourceGroup>
                <appName>your-app-name</appName>
            ...
            </configuration>
        </plugin>
    </plugins>
</build>           

Você pode modificar as configurações do Serviço de Aplicativo diretamente no .pom.xml Algumas configurações comuns estão listadas na tabela a seguir:

Property Necessário Description Versão
<schemaVersion> false Especifique a versão do esquema de configuração. Os valores suportados são: v1, v2. 1.5.2
<subscriptionId> false Especifique o ID da assinatura. 0.1.0+
<resourceGroup> verdadeiro Grupo de Recursos do Azure para seu Aplicativo Web. 0.1.0+
<appName> verdadeiro O nome do seu aplicativo Web. 0.1.0+
<region> false Especifica a região para hospedar seu aplicativo Web; O valor padrão é Centralus. Todas as regiões válidas na seção Regiões suportadas. 0.1.0+
<pricingTier> false A camada de preço para seu aplicativo Web. O valor padrão é P1v2 para carga de trabalho de produção, enquanto B2 é o mínimo recomendado para desenvolvimento/teste Java. Para obter mais informações, consulte Preços do Serviço de Aplicativo 0.1.0+
<runtime> false A configuração do ambiente de tempo de execução. Para obter mais informações, consulte Detalhes de configuração. 0.1.0+
<deployment> false A configuração de implantação. Para obter mais informações, consulte Detalhes de configuração. 0.1.0+

Para obter a lista completa de configurações, consulte a documentação de referência do plugin. Todos os plug-ins do Azure Maven compartilham um conjunto comum de configurações. Para essas configurações, consulte Configurações comuns. Para configurações específicas do Serviço de Aplicativo, consulte Aplicativo Web do Azure: Detalhes de Configuração.

Tenha cuidado com os valores de <appName> e <resourceGroup> (petstoreee7-1690443003536 e petstoreee7-1690443003536-rg consequentemente na demonstração). Eles são usados mais tarde.

4 - Implante o aplicativo

Com toda a configuração pronta em seu arquivo pom.xml , você pode implantar seu aplicativo Java no Azure com um único comando.

# Disable testing, as it requires Wildfly to be installed locally.
mvn package azure-webapp:deploy -DskipTests

Quando a implantação estiver concluída, seu aplicativo estará pronto em http://<appName>.azurewebsites.net/ (http://petstoreee7-1690443003536.azurewebsites.net na demonstração). Abra o url com seu navegador da Web local, você deve ver

Screenshot of Maven Hello World web app running in Azure App Service.

Parabéns! Você implantou seu primeiro aplicativo Java no Serviço de Aplicativo.

5 - Limpar recursos

Nos passos anteriores, criou os recursos do Azure num grupo de recursos. Se você não precisar dos recursos no futuro, exclua o grupo de recursos do portal ou executando o seguinte comando no Cloud Shell:

az group delete --name <your resource group name; for example: petstoreee7-1690443003536-rg> --yes

Este comando pode demorar alguns minutos a ser executado.

Próximos passos