Condividi tramite


Usare gli ambienti dell'interfaccia della riga di comando per sviluppatori di Azure

L'interfaccia della riga di comando per sviluppatori di Azure (azd) consente di creare e gestire ambienti con configurazioni personalizzate, ad esempio sviluppo, test e produzione. Questo articolo illustra come creare e gestire gli ambienti e come usarli con i file di infrastruttura Bicep.

Creare ambienti

Creare un nuovo ambiente usando il azd env new comando :

azd env new <environment-name>

Ad esempio, per creare un ambiente di sviluppo:

azd env new dev

Quando si esegue un comando come azd up o azd deploy, azd viene richiesto di selezionare una sottoscrizione di Azure e un percorso per il nuovo ambiente. Le impostazioni di richiesta vengono archiviate nel nuovo ambiente .env o config.json nei file.

È anche possibile specificare la sottoscrizione e il percorso direttamente nel comando :

azd env new prod --subscription "My Production Subscription" --location eastus2

Elencare gli ambienti

Per visualizzare tutti gli ambienti disponibili per il progetto, usare:

azd env list

Questo comando visualizza tutti gli ambienti creati, evidenziando l'ambiente attivo corrente:

NAME      DEFAULT   LOCAL     REMOTE
dev       true      true      false
test      false     true      false
prod      false     true      false

Passare da un ambiente all'altro

Per passare a un ambiente diverso, usare il azd env select comando :

azd env select <environment-name>

Ad esempio, per passare a un ambiente di produzione:

azd env select prod

Annotazioni

Questo comando modifica l'ambiente attivo, che influisce sui comandi successivi azd come provision o deploy.

Informazioni sull'ambiente predefinito

Il file .azure/config.json di configurazione globale tiene traccia dell'ambiente attualmente selezionato. Quando si esegue azd init e non esistono ancora ambienti, azd crea automaticamente il primo ambiente e lo imposta come predefinito. Se si dispone già di uno o più ambienti ed eseguire azd env new <name>, azd viene richiesto di scegliere se impostare il nuovo ambiente come predefinito. Se si rifiuta, il nuovo ambiente viene creato ma la selezione corrente rimane invariata.

È possibile eseguire temporaneamente l'override dell'ambiente predefinito per un singolo comando usando il --environment flag . L'uso di questo flag non modifica il valore predefinito per i comandi futuri.

Aggiornare le impostazioni dell'ambiente

È possibile aggiornare le variabili di ambiente locali usando il azd env refresh comando . Questo comando individua la distribuzione di Azure più recente per l'app, recupera i valori delle variabili di ambiente in base al nome e quindi aggiorna il file locale .env con i valori più recenti per l'ambiente selezionato. Ad esempio, se è stato effettuato il provisioning di una dev versione e prod l'ambiente dev è attualmente selezionato, recupera l'output più recente da tale distribuzione per popolare il file con estensione env.

azd env refresh

Annotazioni

Il azd env refresh comando non ridistribuisce le risorse. Aggiorna solo la configurazione dell'ambiente locale in modo che corrisponda allo stato corrente in Azure.

L'aggiornamento dell'ambiente è utile quando:

  • Si vuole assicurarsi che il file locale .env rifletta gli output più recenti dell'infrastruttura, ad esempio stringhe di connessione, endpoint e così via.
  • È necessario sincronizzare le variabili di ambiente dopo che un compagno di squadra ha aggiornato l'ambiente.

Se altri membri del team hanno apportato modifiche alle configurazioni dell'ambiente o se sono state apportate modifiche tramite il portale di Azure, è possibile aggiornare le impostazioni dell'ambiente locale con:

Eseguire comandi in ambienti specifici

È possibile eseguire molti azd comandi in un ambiente specifico senza modificare l'ambiente attivo usando il --environment flag o -e :

azd up --environment dev

Questo comando esegue il up flusso di lavoro (provisioning e distribuzione) nell'ambiente senza modificare l'ambiente dev attivo.

In alternativa, è possibile passare prima all'ambiente desiderato:

azd env select test
azd up

Annotazioni

Teams deve prendere in considerazione l'uso di pipeline CICD tramite il azd pipeline config comando, invece di indirizzare le distribuzioni usando comandi come azd up o azd provision.

Eliminare le risorse dell'ambiente

Per eliminare le risorse di Azure per un ambiente specifico, usare il azd down comando :

azd down <environment-name>

Annotazioni

Non è attualmente possibile eliminare o rinominare azd gli ambienti direttamente usando i comandi. Se è necessario rinominare un ambiente:

  • Usare azd down per eliminare le risorse dell'ambiente.
  • Eseguire azd env new <new-name> per creare il nuovo ambiente.
  • Eliminare manualmente la cartella precedente .env da .azure.

Usare il nome dell'ambiente nei file di infrastruttura

È possibile usare la AZURE_ENV_NAME variabile dal file dell'ambiente .env per personalizzare le distribuzioni dell'infrastruttura in Bicep. Ciò è utile per la denominazione, l'assegnazione di tag o la configurazione delle risorse in base all'ambiente corrente.

Annotazioni

Per altre informazioni su come usare le variabili di ambiente per configurare i progetti dell'interfaccia della riga di comando per sviluppatori di Azure, vedere Usare le variabili di ambiente .

  1. azd imposta la AZURE_ENV_NAME variabile di ambiente quando si inizializza un progetto.

    AZURE_ENV_NAME=dev
    
  2. main.parameters.json Nel file fare riferimento alla variabile di ambiente in modo da azd sostituire il relativo valore:

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
        "environmentName": {
          "value": "${AZURE_ENV_NAME}"
        }
      }
    }
    

    Quando si esegue la distribuzione con azd, il valore di .env viene passato al file Bicep da main.parameters.json.

  3. Nel modello Bicep definire un parametro per il nome dell'ambiente:

    param environmentName string
    
  4. È possibile usare il parametro per contrassegnare le environmentName risorse, semplificando l'identificazione dell'ambiente a cui appartiene una risorsa:

    param environmentName string
    
    resource storageAccount 'Microsoft.Storage/storageAccounts@2022-09-01' = {
      name: 'mystorage${uniqueString(resourceGroup().id)}'
      location: resourceGroup().location
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
      tags: {
        Environment: environmentName
        Project: 'myproject'
      }
    }
    

Questo approccio consente di gestire le risorse, tenere traccia dei costi e automazione associando ogni risorsa all'ambiente di distribuzione.

Passaggi successivi