Implantar um Open Liberty 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 Open Liberty 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.
Importante
Embora o Serviço de Aplicativo do Azure seja projetado, operado e suportado pela Microsoft, o software que você executa sobre ele está sujeito aos seus próprios termos de licença e suporte do plano de suporte. Para obter detalhes sobre o suporte do software descrito neste artigo, consulte as páginas principais desse software, conforme listado no artigo. Para obter suporte para o Open Liberty, consulte a página de suporte do Open Liberty. Para obter suporte para WebSphere Liberty, consulte IBM Cloud Support.
Pré-requisitos
- A CLI do Azure, localmente ou através do Azure Cloud Shell.
- Um Java Development Kit (JDK) suportado. Para obter mais informações sobre os JDKs disponíveis para uso ao desenvolver no Azure, consulte Suporte a Java no Azure e Azure Stack.
- Apache Maven, versão 3.
Iniciar sessão na CLI do Azure
A maneira mais simples e fácil de obter o plug-in Maven implantando seu aplicativo Open Liberty é 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 Open Liberty e o testará localmente.
Abra um navegador da Web e navegue até o site MicroProfile Starter .
Use os valores na tabela a seguir para preencher o MicroProfile Starter.
Campo Value groupId com.microsoft.azure.samples.openliberty artifactId openliberty-olá-azure Versão do MicroProfile MP 4,0 Versão Java SE Java 11 Tempo de execução do MicroProfile Liberdade Aberta Exemplos de especificações Métricas, OpenAPI Selecione DOWNLOAD para baixar o projeto.
Descompacte o arquivo morto; Por exemplo:
unzip openliberty-hello-azure.zip
Execute o aplicativo no ambiente local
Mude o diretório para o projeto concluído. Por exemplo:
cd openliberty-hello-azure/
Construir o projeto usando Maven; Por exemplo:
mvn clean package
Executar o projeto; Por exemplo:
java -jar target/openliberty-hello-azure.jar
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:9080/data/hello
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 Open Liberty para que o Maven possa implantar o aplicativo no Serviço de Aplicativo do Azure no Linux.
Para configurar a implantação, execute o seguinte comando Maven:
mvn com.microsoft.azure:azure-webapp-maven-plugin:2.3.0: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): 2. Java 11 Defina o valor para runtimeStack(Padrão: TOMCAT 8.5): 2. 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 Java
.
Este exemplo usa uma versão específica do plug-in Azure App Service Maven. Você deve considerar o uso da versão mais recente disponível. Você pode descobrir o número da versão mais recente visitando um site como o mvnrepository.com.
Este comando produz uma saída semelhante ao exemplo a seguir:
[INFO] Scanning for projects...
[INFO]
[INFO] ---< com.microsoft.azure.samples.openliberty:openliberty-hello-azure >----
[INFO] Building openliberty-hello-azure 1.0-SNAPSHOT
[INFO] --------------------------------[ war ]---------------------------------
[INFO]
[INFO] --- azure-webapp-maven-plugin:2.3.0:config (default-cli) @ openliberty-hello-azure ---
Auth type: AZURE_CLI
Default subscription:
Username:
[INFO] Subscription:
[INFO] It may take a few minutes to load all Java Web Apps, please be patient.
Define value for OS [Linux]:
1: Windows
* 2: Linux
3: Docker
Enter your choice:
Define value for javaVersion [Java 8]:
* 1: Java 8
2: Java 11
Enter your choice: 2
Define value for webContainer [Tomcat 8.5]:
1: Jbosseap 7
* 2: Tomcat 8.5
3: Tomcat 9.0
Enter your choice:
Define value for pricingTier [P1v2]:
1: B1
2: B2
3: B3
4: D1
5: EP1
6: EP2
7: EP3
8: F1
* 9: P1v2
10: P1v3
11: P2v2
12: P2v3
13: P3v2
14: P3v3
15: S1
16: S2
17: S3
18: Y1
Enter your choice:
Please confirm webapp properties
Subscription Id : ********-****-****-****-************
AppName : openliberty-hello-azure-1642075767899
ResourceGroup : openliberty-hello-azure-1642075767899-rg
Region : centralus
PricingTier : P1v2
OS : Linux
Java : Java 11
Web server stack: Tomcat 8.5
Deploy to slot : false
Confirm (Y/N) [Y]:
[INFO] Saving configuration to pom.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 21.981 s
[INFO] Finished at: 2022-01-13T21:09:39+09:00
[INFO] ------------------------------------------------------------------------
Modifique o arquivo server.xml no diretório /src/main/liberty/config/ para executar o Aplicativo em Aplicativos Web do Azure. No arquivo, adicione a
host="*"
<httpEndpoint>
linha na tag , conforme mostrado no exemplo a seguir:<httpEndpoint id="defaultHttpEndpoint" host="*" httpPort="9080" httpsPort="9443"/>
Modifique a
runtime
entrada deTOMCAT 8.5
parajava
e dedeployment
*.war
para no*.jar
arquivo pom.xml . Em seguida, adicione a<appSettings>
seção à<configuration>
seção dePORT
, e .WEBSITES_CONTAINER_START_TIME_LIMIT
WEBSITES_PORT
Sua entrada XML paraazure-webapp-maven-plugin
será semelhante ao exemplo a seguir:<plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>2.3.0</version> <configuration> <schemaVersion>v2</schemaVersion> <subscriptionId>********-****-****-****-************</subscriptionId> <resourceGroup>openliberty-hello-azure-1642075767899-rg</resourceGroup> <appName>openliberty-hello-azure-1642075767899</appName> <pricingTier>P1v2</pricingTier> <region>japaneast</region> <runtime> <os>Linux</os> <javaVersion>Java 11</javaVersion> <webContainer>java</webContainer> </runtime> <appSettings> <property> <name>PORT</name> <value>9080</value> </property> <property> <name>WEBSITES_PORT</name> <value>9080</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:
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
Implemente a sua aplicação Web com recurso ao Maven; por exemplo:
mvn azure-webapp:deploy
Se a implantação for bem-sucedida, você verá a seguinte saída.
[INFO] Scanning for projects...
[INFO]
[INFO] ---< com.microsoft.azure.samples.openliberty:openliberty-hello-azure >----
[INFO] Building openliberty-hello-azure 1.0-SNAPSHOT
[INFO] --------------------------------[ war ]---------------------------------
[INFO]
[INFO] --- azure-webapp-maven-plugin:2.3.0:deploy (default-cli) @ openliberty-hello-azure ---
Auth type: AZURE_CLI
[INFO] Creating web app openliberty-hello-azure-1642075767899...
[INFO] Successfully created Web App openliberty-hello-azure-1642075767899.
[INFO] Trying to deploy external resources to openliberty-hello-azure-1642075767899...
[INFO] Successfully deployed the resources to openliberty-hello-azure-1642075767899
[INFO] Trying to deploy artifact to openliberty-hello-azure-1642075767899...
[INFO] Deploying (/Users/Downloads/openliberty-hello-azure/target/openliberty-hello-azure.jar)[jar] ...
[INFO] Successfully deployed the artifact to https://openliberty-hello-azure-1642075767899.azurewebsites.net
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:11 min
[INFO] Finished at: 2022-01-13T21:29:50+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.
Quando seu aplicativo tiver sido implantado, você poderá gerenciá-lo por meio do portal do Azure.
Seu aplicativo Web será listado no grupo de recursos.
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 openliberty-hello-azure-1642075767899-rg \
--name openliberty-hello-azure-1642075767899
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:
Maven Plugin for Azure Web Apps (Plug-in do Maven para Aplicações Web do Azure)
Criar um principal de serviço do Azure com a CLI do Azure 2.0