Share via


Come distribuire applicazioni Spring Boot dall'interfaccia della riga di comando di Azure

Nota

Azure Spring Apps è il nuovo nome del servizio Azure Spring Cloud. Anche se il servizio ha un nuovo nome, il nome precedente verrà visualizzato in alcune posizioni per un po' mentre si lavora per aggiornare gli asset, ad esempio screenshot, video e diagrammi.

Questo articolo si applica a: ✔️ Java ❌ C#

Questo articolo si applica a: ✔️ Basic/Standard ❌️ Enterprise

App Spring di Azure abilita le applicazioni Spring Boot in Azure.

È possibile avviare applicazioni direttamente dal codice sorgente Java o da un file JAR predefinito. Questo articolo illustra le procedure di distribuzione.

Prerequisiti

Prima di iniziare, verificare che la sottoscrizione di Azure abbia le dipendenze necessarie:

  1. Installare Git
  2. Installare JDK 8
  3. Installare Maven 3.0 o versione successiva
  4. Installare l'interfaccia della riga di comando di Azure
  5. Iscriversi per ottenere una sottoscrizione di Azure

Suggerimento

Azure Cloud Shell è una shell interattiva gratuita che può essere usata per eseguire la procedura di questo articolo. Include i comuni strumenti di Azure preinstallati, tra cui le ultime versioni di Git, JDK, Maven e dell'interfaccia della riga di comando di Azure. Se è stato eseguito l'accesso alla sottoscrizione di Azure, avviare Azure Cloud Shell da shell.azure.com. Per altre informazioni su Azure Cloud Shell, leggere la documentazione

Installare l'estensione dell'interfaccia della riga di comando di Azure

Installare l'estensione Azure Spring Apps per l'interfaccia della riga di comando di Azure con il comando seguente

az extension add --name spring

Effettuare il provisioning di un'istanza del servizio usando l'interfaccia della riga di comando di Azure

Accedere all'interfaccia della riga di comando di Azure e scegliere la sottoscrizione attiva.

az login
az account list -o table
az account set --subscription <subscription-id>

Creare un gruppo di risorse per contenere il servizio in Azure Spring Apps. Per altre informazioni, vedere Gruppi di risorse di Azure.

az group create --location eastus --name <resource-group-name>

Eseguire i comandi seguenti per effettuare il provisioning di un'istanza di Azure Spring Apps. Preparare un nome per il servizio in Azure Spring Apps. Il nome deve essere composto da 4-32 caratteri e può contenere solo lettere minuscole, numeri e trattini. Il primo carattere del nome del servizio deve essere una lettera e l'ultimo deve essere una lettera o un numero.

az spring create --resource-group <resource-group-name> --name <resource-name>

La distribuzione dell'istanza del servizio richiede circa cinque minuti.

Impostare il nome del gruppo di risorse predefinito e il nome dell'istanza di Azure Spring Apps usando i comandi seguenti:

az config set defaults.group=<service-group-name>
az config set defaults.spring=<service-instance-name>

Creare l'applicazione in Azure Spring Apps

Il comando seguente crea un'applicazione in Azure Spring Apps nella sottoscrizione. Verrà creato un servizio vuoto in cui è possibile caricare l'applicazione.

az spring app create --name <app-name>

Distribuire l'applicazione Spring Boot

È possibile distribuire l'applicazione da un file JAR precompilato o da un repository Gradle o Maven. Le istruzioni relative a ogni caso sono riportate di seguito.

Distribuire un file JAR predefinito

Per eseguire la distribuzione da un file JAR compilato nel computer locale, assicurarsi che la compilazione produca un file di tipo fat-JAR.

Per distribuire il fat-JAR in una distribuzione attiva

az spring app deploy --name <app-name> --artifact-path <path-to-fat-JAR>

Per distribuire il fat-JAR in una distribuzione specifica

az spring app deployment create --app <app-name> \
    --name <deployment-name> \
    --artifact-path <path-to-fat-JAR>

Distribuire dal codice sorgente

Azure Spring Apps usa kpack per compilare il progetto. È possibile usare l'interfaccia della riga di comando di Azure per caricare il codice sorgente, compilare il progetto usando kpack e distribuirlo all'applicazione di destinazione.

Avviso

Il progetto deve produrre un solo file JAR con una voce main-class nel file MANIFEST.MF in target (per le distribuzioni Maven) o build/libs (per le distribuzioni Gradle). Più file JAR con voci main-class determineranno l'esito negativo della distribuzione.

Per i progetti Maven/Gradle con un singolo modulo:

cd <path-to-maven-or-gradle-source-root>
az spring app deploy --name <app-name> --source-path

Per i progetti Maven/Gradle con più moduli, ripetere per ogni modulo:

cd <path-to-maven-or-gradle-source-root>
az spring app deploy --name <app-name> --source-path \
    --target-module <relative-path-to-module>

Visualizzare i log di distribuzione

Esaminare i log di compilazione kpack usando il comando seguente:

az spring app show-deploy-log --name <app-name>

Nota

I log kpack visualizzeranno solo la distribuzione più recente se questa è stata compilata dal codice sorgente usando kpack.

Assegnare un endpoint pubblico a un'applicazione

  1. Aprire il riquadro App per visualizzare le app per l'istanza del servizio.
  2. Selezionare un'applicazione per visualizzare la relativa pagina Panoramica .
  3. Selezionare Assegna endpoint per assegnare un endpoint pubblico all'applicazione. Questo processo può richiedere alcuni minuti.
  4. Copiare l'URL dalla pagina Panoramica e incollarlo nel browser per visualizzare l'applicazione in esecuzione.

Passaggi successivi

Guida introduttiva: Monitoraggio di Azure Spring Apps con log, metriche e traccia

Altri esempi sono disponibili in GitHub: Esempi di App Azure Spring.