Implantar aplicativos Spring Boot usando o Maven
Nota
Os planos Basic, Standard e Enterprise serão preteridos a partir de meados de março de 2025, com um período de aposentadoria de 3 anos. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para obter mais informações, consulte o anúncio de aposentadoria do Azure Spring Apps.
O plano de consumo padrão e dedicado será preterido a partir de 30 de setembro de 2024, com um desligamento completo após seis meses. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para obter mais informações, consulte Migrar consumo padrão e plano dedicado do Azure Spring Apps para Aplicativos de Contêiner do Azure.
Este artigo aplica-se a: ✔️ Java ❌ C#
Este artigo aplica-se a: ✔️ Basic/Standard ✔️ Enterprise
Este artigo mostra como usar o plug-in do Azure Spring Apps Maven para configurar e implantar aplicativos no Azure Spring Apps.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- Uma instância do Azure Spring Apps já provisionada.
- JDK 8 ou JDK 11
- Apache Maven
- Azure CLI versão 2.45.0 ou superior com a extensão Azure Spring Apps. Você pode instalar a extensão usando o seguinte comando:
az extension add --name spring
Gerar um projeto Spring
Para criar um projeto Spring para uso neste artigo, use as seguintes etapas:
Navegue até o Spring Initializr para gerar um projeto de exemplo com as dependências recomendadas para o Azure Spring Apps. Este link usa o seguinte URL para fornecer configurações padrão para você.
https://start.spring.io/#!type=maven-project&language=java&platformVersion=2.5.7&packaging=jar&jvmVersion=1.8&groupId=com.example&artifactId=hellospring&name=hellospring&description=Demo%20project%20for%20Spring%20Boot&packageName=com.example.hellospring&dependencies=web,cloud-eureka,actuator,cloud-config-client
A imagem a seguir mostra a configuração recomendada do Spring Initializr para este projeto de exemplo.
Este exemplo usa Java versão 8. Se você quiser usar o Java versão 11, altere a opção em Metadados do projeto.
Selecione Gerar quando todas as dependências estiverem definidas.
Baixe e descompacte o pacote e, em seguida, crie um controlador da Web para um aplicativo da Web. Adicione o arquivo src/main/java/com/example/hellospring/HelloController.java com o seguinte conteúdo:
package com.example.hellospring; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RequestMapping; @RestController public class HelloController { @RequestMapping("/") public String index() { return "Greetings from Azure Spring Apps!"; } }
Crie os aplicativos Spring localmente
Para criar o projeto usando o Maven, execute os seguintes comandos:
cd hellospring
mvn clean package -DskipTests -Denv=cloud
A compilação do projeto leva vários minutos. Depois de concluído, você deve ter arquivos JAR individuais para cada serviço em suas respetivas pastas.
Provisionar uma instância do Azure Spring Apps
O procedimento a seguir cria uma instância do Azure Spring Apps usando o portal do Azure.
Em uma nova guia, abra o portal do Azure.
Na caixa de pesquisa superior, procure Azure Spring Apps.
Selecione Azure Spring Apps nos resultados.
Na página Azure Spring Apps, selecione Criar.
Preencha o formulário na página Criar Aplicativos do Azure Spring. Tenha em consideração as seguintes orientações:
- Subscrição: selecione a subscrição que pretende que lhe seja cobrada por este recurso.
- Grupo de recursos: Criar novos grupos de recursos para novos recursos é uma prática recomendada. Você usará esse grupo de recursos em etapas posteriores como <nome> do grupo de recursos.
- Detalhes do serviço/nome: especifique o nome> da instância de <serviço. O nome deve ter entre 4 e 32 caracteres e pode conter apenas letras minúsculas, números e hífenes. O primeiro caractere do nome do serviço deve ser uma letra e o último caractere deve ser uma letra ou um número.
- Localização: selecione a região para sua instância de serviço.
Selecione Rever e criar.
Gerar configurações e implantar no Azure Spring Apps
Para gerar configurações e implantar o aplicativo, siga estas etapas:
Execute o seguinte comando a partir da pasta raiz hellospring , que contém o arquivo POM. Se você já entrou com a CLI do Azure, o comando coletará automaticamente as credenciais. Caso contrário, o comando solicitará instruções de entrada. Para obter mais informações, consulte Autenticação no repositório azure-maven-plugins no GitHub.
mvn com.microsoft.azure:azure-spring-apps-maven-plugin:1.10.0:config
Ser-lhe-á pedido que selecione:
- ID da Subscrição - a subscrição que utilizou para criar uma instância do Azure Spring Apps.
- Instância de serviço - o nome da sua instância do Azure Spring Apps.
- Nome do aplicativo - um nome de aplicativo de sua escolha ou use o valor
artifactId
padrão . - Ponto de extremidade - público true para expor o aplicativo ao acesso público, caso contrário, false.
Verifique se o
appName
elemento no arquivo POM tem o valor correto. A parte relevante do arquivo POM deve ser semelhante ao exemplo a seguir.<build> <plugins> <plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-spring-apps-maven-plugin</artifactId> <version>1.10.0</version> <configuration> <subscriptionId>xxxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx</subscriptionId> <clusterName>v-spr-cld</clusterName> <appName>hellospring</appName>
O arquivo POM agora contém as dependências e configurações do plugin.
Implante o aplicativo usando o seguinte comando.
mvn azure-spring-apps:deploy
Verificar os serviços
Após a conclusão da implantação, você pode acessar o aplicativo em https://<service instance name>-hellospring.azuremicroservices.io/
.
Clean up resources (Limpar recursos)
Se você planeja continuar trabalhando com o aplicativo de exemplo, convém deixar os recursos no lugar. Quando não for mais necessário, exclua o grupo de recursos que contém sua instância do Azure Spring Apps. Para excluir o grupo de recursos usando a CLI do Azure, use os seguintes comandos:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."