Administración de variables de entorno en Azure Container Apps
Artículo
En Azure Container Apps, puede establecer variables de entorno en tiempo de ejecución. Estas variables se pueden establecer como entradas manualmente o como referencias a secretos.
Estas variables de entorno se cargan en la aplicación contenedora durante el tiempo de ejecución.
Configuración de las variables de entorno
Puede configurar las variables de entorno al crear la aplicación contenedora o más tarde creando una nueva revisión.
Nota:
Para evitar confusiones, no se recomienda duplicar variables de entorno. Cuando varias variables de entorno tienen el mismo nombre, surte efecto la última de la lista.
Si va a crear una nueva aplicación de contenedor a través de Azure Portal, puede configurar las variables de entorno en la sección Contenedor:
Puede crear su aplicación contenedora con variables de entorno usando el comando az containerapp create pasando las variables de entorno como entradas 'clave=valor' separadas por espacios usando el parámetro --env-vars.
Si quiere hacer referencia a un secreto, tiene que asegurarse de que el secreto al que quiere hacer referencia ya está creado, consulte Administrar secretos. Puede usar el nombre secreto y pasarlo al campo de valor pero empezando por secretref:
Para usar este cmdlet, tiene que pasar el nombre de la variable de entorno usando el parámetro -Name y el valor usando el parámetro -Value, respectivamente.
Si quiere hacer referencia a un secreto, tiene que asegurarse de que el secreto al que quiere hacer referencia ya está creado, consulte Administrar secretos. Puede usar el nombre del secreto y pasarlo al parámetro -SecretRef:
En este cmdlet, tiene que pasar el nombre de la imagen de contenedor (no de la aplicación contenedora) que quiera usando el parámetro -Name, el nombre completo de la imagen usando el parámetro -Image y hacer referencia al objeto de entorno que definió anteriormente en la variable $envVar.
Tenga en cuenta que hay otras configuraciones que es posible que deba definir dentro del objeto de plantilla para evitar invalidarlos como recursos, montajes de volumen, etc. Consulte la documentación completa sobre esta plantilla en New-AzContainerAppTemplateObject.
Por último, puede actualizar su aplicación contenedora basándose en el nuevo objeto de plantilla que ha creado usando el cmdlet Update-AzContainerApp de PowerShell.
En este último cmdlet, solo tiene que pasar el objeto de plantilla que definió en la variable $containerTemplate en el paso anterior usando el parámetro -TemplateContainer.
Adición de variables de entorno en aplicaciones de contenedor existentes
Una vez creada la aplicación contenedora, la única manera de actualizar las variables de entorno de la aplicación contenedora es mediante la creación de una nueva revisión con los cambios necesarios.
En este ejemplo se crea una variable de entorno con un valor manual (no se hace referencia a un secreto). Reemplace los <PLACEHOLDERS> por sus valores.
Si quiere crear varias variables de entorno, puede insertar valores separados por espacios en el formato 'clave=valor'.
Si quiere hacer referencia a un secreto, tiene que asegurarse de que el secreto al que quiere hacer referencia ya está creado, consulte Administrar secretos. Puede usar el nombre secreto y pasarlo al campo de valor pero empezando por secretref:, vea el ejemplo siguiente:
De forma similar a lo que hay que hacer al crear una nueva aplicación contenedora, hay que crear un objeto llamado EnvironmentVar, que está contenido dentro de un Contenedor. Este Contenedor se usa después con el cmdlet New-AzContainerApp de PowerShell.
En este cmdlet, solo tiene que pasar el objeto de plantilla que definió anteriormente como se describe en la sección Configurar variables de entorno.
Azure Container Apps agrega automáticamente variables de entorno que sus aplicaciones y trabajos pueden usar para obtener metadatos de la plataforma en tiempo de ejecución.
Aplicaciones
Las siguientes variables están disponibles para las aplicaciones contenedoras:
Nombre de la variable
Descripción
Valor de ejemplo
CONTAINER_APP_NAME
Nombre de la aplicación de contenedor.
my-containerapp
CONTAINER_APP_REVISION
El nombre de la revisión de la aplicación contenedora.
my-containerapp--20mh1s9
CONTAINER_APP_HOSTNAME
Nombre de host específico de la revisión de la aplicación contenedora.
Sufijo DNS para el entorno de Container Apps. Para obtener el nombre de dominio completo (FQDN) de la aplicación, anexe el nombre de la aplicación al sufijo DNS en el formato $CONTAINER_APP_NAME.$CONTAINER_APP_ENV_DNS_SUFFIX.
<DEFAULT_HOSTNAME>.<REGION>.azurecontainerapps.io
CONTAINER_APP_PORT
El puerto de destino de la aplicación contenedora.
8080
CONTAINER_APP_REPLICA_NAME
Nombre de la aplicación contenedora.
my-containerapp--20mh1s9-86c8c4b497-zx9bq
Trabajos
Las siguientes variables están disponibles para los trabajos de Container Apps: