Guida introduttiva: Compilare e distribuire dal codice sorgente locale ad App Azure Container
Questo articolo illustra come compilare e distribuire un microservizio in App Azure Container dal codice sorgente locale usando il linguaggio di programmazione preferito. In questa guida introduttiva si crea un servizio API Web back-end che restituisce una raccolta statica di album musicali.
Nota
Questa applicazione di esempio è disponibile in due versioni. Una versione in cui l'origine contiene un Dockerfile. L'altra versione non ha dockerfile. Selezionare la versione che riflette meglio il codice sorgente. Se non si ha ancora una volta i contenitori, selezionare l'opzione No Dockerfile (Nessun Dockerfile ) nella parte superiore.
Lo screenshot seguente mostra l'output del servizio API album distribuito.
Prerequisiti
Per completare questo progetto, sono necessari gli elementi seguenti:
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, vedere Assegnare ruoli di Azure usando il portale di Azure. |
Interfaccia della riga di comando di Azure | Installare l'interfaccia della riga di comando di Azure. |
Attrezzaggio
Per accedere ad Azure dall'interfaccia della riga di comando, eseguire il comando seguente e seguire le istruzioni per completare il processo di autenticazione.
az login
Per assicurarsi di eseguire la versione più recente dell'interfaccia della riga di comando, eseguire il comando di aggiornamento.
az upgrade
Installare o aggiornare quindi l'estensione App Azure Container per l'interfaccia della riga di comando.
Se si ricevono errori relativi ai parametri mancanti quando si eseguono az containerapp
comandi nell'interfaccia della riga di comando di Azure o nei cmdlet del Az.App
modulo in Azure PowerShell, assicurarsi di avere installato la versione più recente dell'estensione App Azure Container.
az extension add --name containerapp --upgrade
Nota
A partire da maggio 2024, le estensioni dell'interfaccia della riga di comando di Azure non abilitano più le funzionalità di anteprima per impostazione predefinita. Per accedere alle funzionalità di anteprima di App contenitore, installare l'estensione App contenitore con --allow-preview true
.
az extension add --name containerapp --upgrade --allow-preview true
Ora che l'estensione o il modulo corrente è installato, registrare gli Microsoft.App
spazi dei nomi e Microsoft.OperationalInsights
.
Nota
Le risorse di App Azure Container sono state migrate dallo Microsoft.Web
spazio dei nomi allo Microsoft.App
spazio dei nomi . Per altri dettagli, vedere Migrazione dello spazio dei nomi da Microsoft.Web a Microsoft.App nel mese di marzo 2022.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
Creare variabili di ambiente
Dopo aver completato la configurazione dell'interfaccia della riga di comando di Azure, è possibile definire le variabili di ambiente usate in questo articolo.
Definire le variabili seguenti nella shell bash.
export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"
Scaricare il codice di esempio
Scaricare ed estrarre l'applicazione di esempio API nel linguaggio preferito.
Scaricare il codice sorgente nel computer.
Estrarre il download e passare alla cartella containerapps-albumapi-csharp-main/src .
Scaricare il codice sorgente nel computer.
Estrarre il download e passare alla cartella containerapps-albumapi-csharp-buildpack/src .
Compilare e distribuire l'app contenitore
Compilare e distribuire la prima app contenitore con il containerapp up
comando . Questo comando:
- Creare il gruppo di risorse
- Creare un Registro Azure Container
- Compilare l'immagine del contenitore ed eseguirne il push nel registro
- Creare l'ambiente App contenitore con un'area di lavoro Log Analytics
- Creare e distribuire l'app contenitore usando l'immagine del contenitore compilata
- Creare il gruppo di risorse
- Creare un registro predefinito come parte dell'ambiente
- Rilevare il linguaggio e il runtime dell'applicazione e compilare l'immagine usando il buildpack appropriato
- Eseguire il push dell'immagine nel registro predefinito di App Azure Container
- Creare l'ambiente App contenitore con un'area di lavoro Log Analytics
- Creare e distribuire l'app contenitore usando l'immagine del contenitore compilata
Il up
comando usa il Dockerfile nella radice del repository per compilare l'immagine del contenitore. L'istruzione EXPOSE
nel Dockerfile ha definito la porta di destinazione, ovvero la porta usata per inviare il traffico in ingresso al contenitore.
Se il comando non trova un Dockerfile, usa automaticamente Buildpacks per trasformare l'origine up
dell'applicazione in un contenitore eseguibile. Poiché buildpack sta tentando di eseguire la compilazione per conto dell'utente, è necessario indicare al up
comando la porta a cui inviare il traffico in ingresso.
Nell'esempio di codice seguente, il .
(punto) indica containerapp up
l'esecuzione nella src
directory dell'applicazione API di esempio estratta.
az containerapp up \
--name $API_NAME \
--location $LOCATION \
--environment $ENVIRONMENT \
--source .
az containerapp up \
--name $API_NAME \
--location $LOCATION \
--environment $ENVIRONMENT \
--ingress external \
--target-port 8080 \
--source .
Importante
Per distribuire l'app contenitore in un gruppo di risorse esistente, includere --resource-group yourResourceGroup
nel containerapp up
comando .
Verificare la distribuzione
Copiare il nome di dominio completo in un Web browser. Dal Web browser passare all'endpoint /albums
del nome di dominio completo.
Limiti
La dimensione massima per il caricamento del codice sorgente è 200 MB. Se il caricamento supera il limite, viene restituito l'errore 413.
Pulire le risorse
Se non si intende continuare con l'esercitazione Distribuire un front-end , è possibile rimuovere le risorse di Azure create durante questa guida introduttiva con il comando seguente.
Attenzione
Il comando seguente elimina il gruppo di risorse specificato e tutte le risorse contenute al suo interno. Se il gruppo contiene risorse esterne all'ambito di questa guida introduttiva, vengono eliminate anche.
az group delete --name $RESOURCE_GROUP
Suggerimento
Problemi? Segnalare il problema in GitHub aprendo un problema nel repository di App contenitore di Azure.
Passaggi successivi
Dopo aver completato questa guida introduttiva, è possibile continuare a Esercitazione: Comunicazione tra microservizi in App Azure Container per informazioni su come distribuire un'applicazione front-end che chiama l'API.
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per