Compartir a través de


Trabajar con entornos de la CLI para desarrolladores de Azure

La CLI para desarrolladores de Azure (azd) le ayuda a crear y administrar entornos con sus propias configuraciones , como desarrollo, prueba y producción. En este artículo se muestra cómo crear y administrar entornos y cómo usarlos con los archivos de infraestructura de Bicep.

Creación de entornos

Cree un nuevo entorno mediante el azd env new comando :

azd env new <environment-name>

Por ejemplo, para crear un entorno de desarrollo:

azd env new dev

Al ejecutar un comando como azd up o azd deploy, azd se le pide que seleccione una suscripción y ubicación de Azure para el nuevo entorno. La configuración del símbolo del sistema se almacena en el nuevo entorno .env o config.json archivos.

También puede especificar la suscripción y la ubicación directamente en el comando :

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

Mostrar entornos

Para ver todos los entornos disponibles para el proyecto, use:

azd env list

Este comando muestra todos los entornos creados, resaltando el entorno activo actual:

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

Cambiar entre entornos

Para cambiar a otro entorno, use el azd env select comando :

azd env select <environment-name>

Por ejemplo, para cambiar a un entorno de producción:

azd env select prod

Nota:

Este comando cambia el entorno activo, que afecta a los comandos posteriores azd como provision o deploy.

Descripción del entorno predeterminado

El archivo .azure/config.json de configuración global realiza un seguimiento del entorno seleccionado actualmente. Cuando se ejecutan azd init y aún no existen entornos, azd se crea automáticamente el primer entorno y se establece como predeterminado. Si ya tiene uno o varios entornos y ejecuta azd env new <name>, azd le pedirá que elija si desea que el nuevo entorno sea el predeterminado. Si rechaza, se crea el nuevo entorno, pero la selección actual permanece sin cambios.

Puede invalidar temporalmente el entorno predeterminado para un único comando mediante la --environment marca . El uso de esta marca no cambia el valor predeterminado para los comandos futuros.

Actualizar la configuración del entorno

Puede actualizar las variables de entorno locales mediante el azd env refresh comando . Este comando busca la implementación de Azure más reciente para la aplicación, recupera los valores de las variables de entorno por nombre y, a continuación, actualiza el archivo local .env con esos valores más recientes para el entorno de selección. Por ejemplo, si aprovisionó una dev versión y prod y actualmente tiene seleccionado el dev entorno, recupera la salida más reciente de esa implementación para rellenar el archivo .env.

azd env refresh

Nota:

El azd env refresh comando no vuelve a implementar recursos. Solo actualiza la configuración del entorno local para que coincida con el estado actual en Azure.

Actualizar el entorno es útil cuando:

  • Quiere asegurarse de que el archivo local .env refleja las salidas más recientes de la infraestructura (como cadenas de conexión, puntos de conexión, etc.).
  • Debe sincronizar las variables de entorno después de que un compañero de equipo actualice el entorno.

Si otros miembros del equipo realizaron cambios en las configuraciones del entorno o si realizó cambios a través de Azure Portal, puede actualizar la configuración del entorno local con:

Ejecución de comandos en entornos específicos

Puede ejecutar muchos azd comandos en un entorno específico sin cambiar el entorno activo mediante la --environment marca o -e :

azd up --environment dev

Este comando ejecuta el up flujo de trabajo (aprovisionar e implementar) en el dev entorno sin cambiar el entorno activo.

Como alternativa, puede cambiar primero al entorno previsto:

azd env select test
azd up

Nota:

Teams debe considerar la posibilidad de usar canalizaciones CICD a través del azd pipeline config comando, en lugar de implementar directamente mediante comandos como azd up o azd provision.

Eliminación de recursos de entorno

Para eliminar los recursos de Azure para un entorno específico, use el azd down comando :

azd down <environment-name>

Nota:

Actualmente no es posible eliminar ni cambiar el nombre azd de los entornos directamente mediante comandos. Si necesita cambiar el nombre de un entorno:

  • Use azd down para eliminar los recursos del entorno.
  • Ejecute azd env new <new-name> para crear el nuevo entorno.
  • Elimine manualmente la carpeta antigua .env de .azure.

Uso del nombre del entorno en los archivos de infraestructura

Puede usar la AZURE_ENV_NAME variable del archivo del .env entorno para personalizar las implementaciones de infraestructura en Bicep. Esto resulta útil para asignar nombres, etiquetado o configurar recursos en función del entorno actual.

Nota:

Visite Work with environment variables (Trabajar con variables de entorno ) para obtener más información sobre cómo usar variables de entorno para configurar los proyectos de la CLI para desarrolladores de Azure.

  1. azd establece la variable de AZURE_ENV_NAME entorno al inicializar un proyecto.

    AZURE_ENV_NAME=dev
    
  2. En el main.parameters.json archivo, haga referencia a la variable de entorno para azd sustituir su valor:

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

    Al implementar con azd, el valor de .env se pasa al archivo de Bicep desde main.parameters.json.

  3. En la plantilla de Bicep, defina un parámetro para el nombre del entorno:

    param environmentName string
    
  4. Puede usar el environmentName parámetro para etiquetar los recursos, lo que facilita la identificación del entorno al que pertenece un recurso:

    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'
      }
    }
    

Este enfoque ayuda con la administración de recursos, el seguimiento de costos y la automatización asociando cada recurso con su entorno de implementación.

Pasos siguientes