Exemplo de implantação de aplicativo Java

Concluído

Nesta unidade, você vai configurar o aplicativo Spring Boot para ser implantado por meio do Maven. Em seguida, você implantará o aplicativo em uma instância do Serviço de Aplicativo do Azure. Esta unidade mostra o exemplo de uma clínica veterinária.

Aplicativo de exemplo

Clone sua ferramenta de linha de comando favorita.

git clone https://github.com/spring-projects/spring-petclinic.git

Depois, execute-a localmente.

cd spring-petclinic

./mvnw package

java -jar target/*.jar

Quando você abrir o exemplo no navegador, ele deverá ser o seguinte:

Screenshot that shows clicking through the local deployment of the example pet clinic application.

Deixar o aplicativo de exemplo pronto para a nuvem

Na pasta src, você encontrará as classes object, controller e repository.

Como o Java é independente da plataforma, você está livre para escolher o sistema operacional, mas a versão do Java é importante para a implantação. Você pode encontrar a versão do Java no arquivo pom.xml.

<properties>
    <java.version>17</java.version>
</properties>

O exemplo usa Java 8, portanto, nossa instância do Serviço de Aplicativo do Azure, seja Linux ou Windows, também deve usar o Java 8. Como não é necessário usar uma plataforma específica, usaremos o Linux em nosso exemplo.

Temos que adicionar algumas dependências do Azure ao arquivo pom.xml. A adição das dependências poderá acontecer automaticamente se você executar o comando a seguir:

mvn com.microsoft.azure:azure-webapp-maven-plugin:2.11.1:config

A saída desse comando solicitará que algumas opções sejam especificadas. Essas opções serão armazenadas automaticamente no pom.xml.

Please choose which part to config:
* 1: Application
  2: Runtime
  3: DeploymentSlot
Enter your choice: 1
Define value for appName [spring-petclinic-XXXX200]:
Define value for resourceGroup [spring-petclinic-XXXX200-rg]:
Define value for region [westeurope]:
Define value for pricingTier(P1v2):
   1: b1
   2: b2
   3: b3
   4: d1
   5: f1
*  6: p1v2
   7: p2v2
   8: p3v2
   9: s1
  10: s2
  11: s3
Enter your choice: 1
Please confirm webapp properties
AppName : spring-petclinic-XXXX200
ResourceGroup : spring-petclinic-XXXX200-rg
Region : westeurope
PricingTier : Basic_B2
OS : Linux
RuntimeStack : JAVA 8-jre8
Deploy to slot : false
Confirm (Y/N) [Y]: y

[INFO] Saving configuration to pom.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS

Como você pode ver, é possível usar os padrões para uma implantação simples.

O arquivo pom.xml agora adicionou o plug-in necessário para a implantação baseada em Maven automaticamente ao Azure.

 <plugin>
    <groupId>com.microsoft.azure</groupId>  
        <artifactId>azure-webapp-maven-plugin</artifactId>  
        <version>2.11.1</version>  
        <configuration>
          <schemaVersion>V2</schemaVersion>  
          <subscriptionId>XXX-XXX-XXX</subscriptionId>  
          <resourceGroup>spring-petclinic-XXX200-rg</resourceGroup>  
          <appName>spring-petclinic-XXX200</appName>  
          <pricingTier>B2</pricingTier>  
          <region>westeurope</region>  
          <runtime>
            <os>linux</os>  
            <javaVersion>jre8</javaVersion>  
            <webContainer>jre8</webContainer>
          </runtime>  
          <deployment>
            <resources>
              <resource>
                <directory>${project.basedir}/target</directory>  
                <includes>
                  <include>*.jar</include>
                </includes>
              </resource>
            </resources>
          </deployment>
        </configuration>
  </plugin>

Implantar o aplicativo com o Maven

Agora estamos preparados para a implantação no Serviço de Aplicativo do Azure.

mvn package com.microsoft.azure:azure-webapp-maven-plugin:1.12.0:deploy

Esse comando executa os testes. Em seguida, ele gira automaticamente uma instância do Serviço de Aplicativo do Azure e implanta o aplicativo empacotado.

Screenshot of the deployed example pet clinic application.

Parabéns! O aplicativo foi implantado com êxito no Serviço de Aplicativo do Azure.