Esplorare e personalizzare un modello dell'interfaccia della riga di comando per sviluppatori di Azure

In questa guida introduttiva si esplora e si personalizza un modello dell'interfaccia della riga di comando per sviluppatori di Azure. Il modello hello-azd offre un semplice punto di partenza per la compilazione e la distribuzione di applicazioni in Azure tramite l'interfaccia della riga di comando per sviluppatori di Azure (azd). Questa guida introduttiva si espande sui concetti illustrati nell'articolo Avvio rapido - Distribuire un modello azd .

Prerequisiti

Per completare questa guida introduttiva nel browser, è necessario:

  • Accesso a GitHub Codespaces

In alternativa, per completare questo avvio rapido usando gli strumenti locali:

Esplorare la struttura del template Azure Developer CLI

azd i modelli sono repository di codice standard con asset aggiuntivi inclusi. Tutti i azd modelli condividono una struttura di file simile in base alle azd convenzioni:

  • infra folder : contiene tutte le infrastrutture Bicep o Terraform come file di codice per il azd modello. azd esegue questi file per creare le risorse di Azure necessarie per l'app.
  • src folder : contiene il codice sorgente dell'app. azd crea pacchetti e distribuisce il codice in base alle configurazioni in azure.yaml.
  • azure.yaml file : file di configurazione che esegue il mapping delle cartelle del codice sorgente nel progetto alle risorse di Azure definite nella cartella per la infra distribuzione. Ad esempio, è possibile definire un servizio API e un servizio front-end Web in cartelle separate ed eseguirne il mapping a risorse di Azure diverse per la distribuzione.
  • .azure folder : contiene configurazioni di Azure essenziali, ad esempio il percorso per distribuire le risorse.

Ad esempio, la maggior parte dei azd modelli corrisponde alla struttura di cartelle seguente:

Screenshot che mostra una struttura del modello dell'interfaccia da riga di comando per sviluppatori di Azure.

Consultare l'articolo Panoramica dei modelli dell'interfaccia della riga di comando di Azure Developer per ulteriori dettagli sulla struttura dei modelli.

Configurare il modello di esempio

hello-azd è un modello di esempio progettato per presentare le funzionalità essenziali di azd che è possibile distribuire in Azure usando un singolo comando. Il modello fornisce un'interfaccia utente intuitiva con informazioni su azd e un piccolo strumento demo che consente di caricare e visualizzare i ticket di supporto.

Il modello supporta le funzionalità seguenti:

  • Pacchettizza e distribuisce un'app containerizzata su App contenitore di Azure
  • Crea le risorse di Azure necessarie per l'app, ad esempio un database di Azure Cosmos DB
  • Può configurare automaticamente una pipeline CI/CD usando il azd pipeline config comando

Per configurare il modello, seguire questa procedura:

  1. Aprire il repository dei modelli hello-azd in GitHub.

  2. Selezionare il pulsante Code e quindi Codespaces.

  3. Creare un nuovo codespace per avviare un ambiente di sviluppo completamente configurato nel browser. Potrebbe essere necessario attendere un momento per l'ambiente ad inizializzarsi.

  4. Dopo il caricamento dell'ambiente Codespaces, inizializzare il azd modello usando il azd init comando :

    azd init -t hello-azd
    
  5. Quando richiesto, immettere un nome per l'ambiente azd , ad esempio helloazd.

Esplorare il modello

Con il modello aperto nello strumento preferito, è possibile esplorare la struttura di cartelle per esplorare il funzionamento azd dei modelli:

  1. Espandere la src cartella per visualizzare il codice sorgente dell'app.

    • Il hello-azd modello include un'app .NET containerizzata che fornisce un'interfaccia utente semplice per apprendere su azd e gestire i dati di esempio dei ticket. azd supporta anche altri linguaggi come JavaScript e Python.
    • Quando si esegue azd up, l'app viene pacchettizzata in un'immagine del container e distribuita in App contenitore di Azure.
  2. Espandere la infra cartella per esplorare l'infrastruttura come file di codice.

    • Questo modello usa i file Bicep (.bicep) per creare risorse di Azure, ma è anche possibile usare Terraform (.tf).

    • Il main.bicep file crea risorse di Azure facendo riferimento ad altri moduli Bicep nella infra cartella, ad esempio un account di archiviazione di Azure:

      // Omitted...
      
      // Create a storage account
      module storage './core/storage/storage-account.bicep' = {
          name: 'storage'
          scope: rg
          params: {
          name: !empty(storageAccountName) ? storageAccountName : '${abbrs.storageStorageAccounts}${resourceToken}'
          location: location
          tags: tags
          containers: [
              {
              name: 'attachments'
              }
          ]
          }
      }
      
      // Omitted...
      
  3. Nella radice del modello aprire il azure.yaml file per visualizzare le configurazioni dei modelli essenziali:

    • Il modello definisce un servizio denominato aca.

    • La configurazione del servizio aca istruisce azd di confezionare e distribuire il codice sorgente nella cartella src all'app Azure Container che è stata fornita dai moduli Bicep che avete esplorato in precedenza.

    • Le docker configurazioni indicano di azd creare un pacchetto e distribuire l'app come contenitore.

      metadata:
        template: hello-azd-dotnet  # Specifies the template being used
      name: azd-starter  # Name of the project
      services:
        aca:  # Define the Azure Container App service
          project: ./src  # Path to the source code
          language: csharp  # Programming language
          host: containerapp  # Hosting service
          docker:
            path: ./Dockerfile  # Location of the Dockerfile
      

Aggiornare il modello

È possibile apportare modifiche al modello per influenzare l'app e le risorse distribuite. In questo esempio si apportano due piccole modifiche all'app ed esplori i risultati della distribuzione.

  • Aggiornare il testo di benvenuto dell'intestazione dell'app al proprio messaggio
  • Aggiornare l'account di archiviazione creato in modo che crei due contenitori BLOB anziché uno

Per apportare queste modifiche, completare la procedura seguente:

  1. Nella cartella src > Components > Pages, aprire il componente Home.razor.

  2. Sostituire il testo dell'intestazione Hello, Azure Developer CLI! nella parte superiore della pagina con un messaggio diverso, ad esempio Hello, modello personalizzato! e salvare le modifiche.

    <MudText Typo="Typo.h2" GutterBottom="true">Hello, customized template!</MudText>
    
  3. infra Nella cartella aprire il main.bicep file.

  4. Trova il blocco di codice Bicep intorno alla riga 75 che crea un account di archiviazione e un contenitore di blob.

    // Create a storage account
    module storage './core/storage/storage-account.bicep' = {
      name: 'storage'
      scope: rg
      params: {
        name: !empty(storageAccountName) ? storageAccountName : '${abbrs.storageStorageAccounts}${resourceToken}'
        location: location
        tags: tags
        containers: [
          {
            name: 'attachments'
          }
        ]
      }
    }
    

    Sostituire il codice con il frammento di codice seguente:

    // Create a storage account
    module storage './core/storage/storage-account.bicep' = {
      name: 'storage'
      scope: rg
      params: {
        name: !empty(storageAccountName) ? storageAccountName : '${abbrs.storageStorageAccounts}${resourceToken}'
        location: location
        tags: tags
        containers: [
          {
            name: 'attachments'
          },
          {
            name: 'archive'
          }
        ]
      }
    }
    
    

Eseguire il modello

Dopo aver apportato le modifiche, usa il comando azd up per fornire e distribuire le risorse dell'app.

  1. Aprire un terminale nella directory del progetto.

  2. Per effettuare il provisioning e distribuire il modello, eseguire il azd up comando :

    azd up
    

    Questo comando consentirà di:

    • Creare un pacchetto dell'app per la distribuzione
    • Effettuare il provisioning delle risorse di Azure necessarie
    • Distribuire l'applicazione con le modifiche aggiornate
    • Stampare l'URL per l'applicazione distribuita
  3. Per visualizzare l'applicazione aggiornata in tempo reale, aprire l'URL mostrato nei log di output della azd console nel browser.

    Screenshot che mostra l'intestazione dell'app aggiornata.

  4. Per visualizzare i due contenitori BLOB creati, passare all'account di archiviazione creato nel portale di Azure.

    Screenshot che mostra i contenitori BLOB creati.

Conclusione

In questa guida rapida, hai esplorato la struttura del modello hello-azd, personalizzato l'applicazione e l'infrastruttura, e distribuito il tutto su Azure usando la CLI per sviluppatori di Azure. Per scenari più avanzati, esplorare altri modelli o approfondire la azd documentazione.

Passaggi successivi