Condividi tramite


Avvio rapido: Avviare la prima applicazione Java in App contenitore di Azure

Questo articolo illustra come distribuire l'applicazione di esempio Spring PetClinic da eseguire in App contenitore di Azure. Anziché creare manualmente un Dockerfile e usare direttamente un registro contenitori, è possibile distribuire l'applicazione Java direttamente da un file Java Archive (JAR) o da un file di archivio di applicazioni Web (WAR).

Al termine di questa esercitazione si distribuisce un'applicazione Web, che è possibile gestire tramite il portale di Azure.

L'immagine seguente è uno screenshot dell'aspetto dell'applicazione dopo la distribuzione in Azure.

Screenshot dell'app petclinic.

Prerequisiti

Requisito Istruzioni
Account di Azure Se non si dispone di un account, crearne uno gratuitamente.

Per continuare, è necessaria l'autorizzazione collaboratore o proprietario per la sottoscrizione di Azure.

Per informazioni dettagliate, fare riferimento ad Assegnare ruoli di Azure usando il portale di Azure.
Account GitHub È possibile ottenerlo gratuitamente.
git Installare Git
Interfaccia della riga di comando di Azure Installare l'interfaccia della riga di comando di Azure.
Estensione dell'interfaccia della riga di comando di App contenitore Usare la versione 0.3.47 o una versione successiva. Usare quindi il comando az extension add --name containerapp --upgrade --allow-preview per installare la versione più recente.
Java Installare Java Development Kit. Usare la versione 17 o successiva.
Apache Maven Scaricare e installare Apache Maven.

Preparare il progetto

Clonare l'applicazione di esempio Spring PetClinic nel computer.

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

Compilare il progetto

Passare alla cartella spring-petclinic.

cd spring-petclinic

Pulire l'area di compilazione Maven, compilare il codice del progetto e creare un file JAR, ignorando tutti i test.

mvn clean verify

Dopo aver eseguito il comando di compilazione, viene generato un file denominato petclinic.jar nella cartella /target.

Nota

Se necessario, è possibile specificare la versione Tomcat nelle variabili di ambiente di compilazione Java.

Passare alla cartella spring-framework-petclinic.

cd spring-framework-petclinic

Pulire l'area di compilazione Maven, compilare il codice del progetto e creare un file WAR, ignorando tutti i test.

mvn clean verify

Dopo aver eseguito il comando di compilazione, viene generato un file denominato petclinic.war nella cartella /target.

Distribuire il progetto

Distribuire il pacchetto JAR in App contenitore di Azure.

Nota

Se necessario, è possibile specificare la versione JDK nelle variabili di ambiente di compilazione Java.

Ora è possibile distribuire il file WAR con il comando dell'interfaccia della riga di comando az containerapp up.

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --subscription <SUBSCRIPTION_ID>\
  --location <LOCATION> \
  --environment <ENVIRONMENT_NAME> \
  --artifact <JAR_FILE_PATH_AND_NAME> \
  --ingress external \
  --target-port 8080 \
  --query properties.configuration.ingress.fqdn

Nota

La versione predefinita di JDK è 17. Se è necessario modificare la versione di JDK per la compatibilità con l'applicazione, è possibile usare l'argomento --build-env-vars BP_JVM_VERSION=<YOUR_JDK_VERSION> per modificare il numero di versione.

Altre variabili di ambiente di compilazione applicabili sono disponibili nelle variabili di ambiente di compilazione Java.

Distribuire il pacchetto WAR in App contenitore di Azure.

Ora è possibile distribuire il file WAR con il comando dell'interfaccia della riga di comando az containerapp up.

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --subscription <SUBSCRIPTION>\
  --location <LOCATION> \
  --environment <ENVIRONMENT_NAME> \
  --artifact <WAR_FILE_PATH_AND_NAME> \
  --build-env-vars BP_TOMCAT_VERSION=10.* \
  --ingress external \
  --target-port 8080 \
  --query properties.configuration.ingress.fqdn

Nota

La versione predefinita di Tomcat è 9. Se è necessario modificare la versione di Tomcat per la compatibilità con l'applicazione, è possibile usare l'argomento --build-env-vars BP_TOMCAT_VERSION=<YOUR_TOMCAT_VERSION> per modificare il numero di versione.

In questo esempio, la versione di Tomcat è impostata su 10 (incluse le versioni secondarie) impostando la variabile di ambiente BP_TOMCAT_VERSION=10.*.

Altre variabili di ambiente di compilazione applicabili sono disponibili nelle variabili di ambiente di compilazione Java.

Verificare lo stato dell'app

In questo esempio, il comando containerapp up include l'argomento --query properties.configuration.ingress.fqdn, che restituisce il nome di dominio completo (FQDN), noto anche come URL dell'app.

Visualizzare l'applicazione incollando questo URL in un browser. L'app deve essere simile allo screenshot seguente.

Screenshot dell'applicazione petclinic.

Passaggi successivi