Comparteix a través de


Inicio rápido: Uso de Azure App Configuration en Azure Container Apps

En este inicio rápido, usará Azure App Configuration en una aplicación que se ejecuta en Azure Container Apps. De este modo, puede centralizar el almacenamiento y la administración de la configuración de las aplicaciones en Container Apps. En este inicio rápido se aprovecha la aplicación ASP.NET Core creada en Inicio rápido: Creación de una aplicación de ASP.NET Core con App Configuration. Va a incluir en contenedores la aplicación y la implementará en Azure Container Apps. Complete el inicio rápido antes de continuar.

Sugerencia

A medida que siga este inicio rápido, preferiblemente registre todos los recursos nuevos dentro de un único grupo de recursos para que pueda volver a agruparlos en un solo lugar y eliminarlos más rápido más adelante si ya no los necesita.

Requisitos previos


Conexión de Azure App Configuration a la aplicación de contenedor

En el Azure Portal, vaya a la instancia de Container App. Siga el Inicio rápido de Service Connector para Azure Container Apps para crear una conexión de servicio con el almacén de App Configuration mediante la configuración siguiente.

  • En la pestaña Básica:

    • seleccione App Configuration para Tipo de servicio.

    • elija el almacén de App Configuration para "App Configuration"

      Screenshot the Azure platform showing a form in the Service Connector menu in a Container App.

  • En la pestaña Autenticación:

    • elija Tipo de autenticación cadena de conexión y Solo lectura para "Permisos para la cadena de conexión
    • expanda el menú Avanzado. En la información de configuración, debe haber una variable de entorno ya creada denominada "AZURE_APPCONFIGURATION_CONNECTIONSTRING". Edite la variable de entorno seleccionando el icono de la derecha y cambie el nombre a ConnectionStrings__AppConfig. Es necesario realizar este cambio, ya que ConnectionStrings__AppConfig es el nombre de la variable de entorno que buscará la aplicación compilada en el Inicio rápido de ASP.NET Core. Esta es la variable de entorno que contiene la cadena de conexión para App Configuration. Si ha usado otra aplicación para seguir este inicio rápido, use el nombre de la variable de entorno correspondiente. A continuación, seleccione Done (Listo).
  • Use valores predeterminados para todo lo demás.

Una vez hecho esto, se agregará una variable de entorno denominada ConnectionStrings__AppConfig al contenedor de la aplicación de contenedor. Su valor es una referencia del secreto de la aplicación de contenedor, la cadena de conexión del almacén de App Configuration.

Compilación de un contenedor

  1. Ejecute el comando dotnet publish para compilar la aplicación en modo de versión y crear los recursos en la carpeta publicada.

    dotnet publish -c Release -o published
    
  2. Cree un archivo denominado Dockerfile en el directorio que contiene el archivo .csproj, ábralo en un editor de texto y escriba el siguiente contenido. Un Dockerfile es un archivo de texto que no tiene una extensión y que se usa para crear una imagen de contenedor.

    FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS runtime
    WORKDIR /app
    COPY published/ ./
    ENTRYPOINT ["dotnet", "TestAppConfig.dll"]
    
  3. Compile el contenedor ejecutando el siguiente comando.

    docker build --tag aspnetapp .
    

Crear una instancia de Azure Container Registry

Crear una instancia de Azure Container Registry (ACR). ACR permite compilar, almacenar y administrar imágenes de contenedor.

  1. Para crear el registro de contenedor, siga el Inicio rápido de Azure Container Registry.
  2. Una vez completada la implementación, abra la instancia de ACR y, en el menú izquierdo, seleccione Configuración > Claves de acceso.
  3. Tome nota del valor del Servidor de inicio de sesión que aparece en esta página. Usará esta información en un paso posterior.
  4. Cambie Usuario administrador a Habilitado. Esta opción le permite conectar ACR a Azure Container Apps mediante credenciales de usuario administrador. Como alternativa, puede dejarla deshabilitada y configurar la aplicación de contenedor para extraer imágenes del registro con una identidad administrada.

Inserción de la imagen en Azure Container Registry

Inserte la imagen de Docker en el ACR creado anteriormente.

  1. Después, use el comando az acr login para iniciar sesión en el registro.

    az acr login --name myregistry
    

    El comando devuelve Login Succeeded una vez que el inicio de sesión es correcto.

  2. Use la etiqueta docker para etiquetar los detalles adecuados de la imagen.

    docker tag aspnetapp myregistry.azurecr.io/aspnetapp:v1
    

    Sugerencia

    Para revisar la lista de las etiquetas e imágenes de Docker existentes, ejecute docker image ls. En este escenario, debería ver al menos dos imágenes: aspnetapp y myregistry.azurecr.io/aspnetapp.

  3. Use docker push para insertar la imagen en el registro de contenedor. Este ejemplo crea el repositorio aspnetapp en ACR, que contiene la imagen aspnetapp. En el ejemplo siguiente, reemplace los marcadores de posición <login-server, <image-name> y <tag> por el valor del servidor de inicio de sesión de ACR, el nombre de la imagen y la etiqueta de imagen.

    Método:

    docker push <login-server>/<image-name>:<tag>
    

    Ejemplo:

    docker push myregistry.azurecr.io/aspnetapp:v1
    
  4. Abra el Azure Container Registry en el Azure Portal y confirme que, en Repositorios, puede ver el nuevo repositorio.

    Screenshot of the Azure platform showing a repository in Azure Container Registries.

Incorporación de la imagen de contenedor a Azure Container Apps

Actualice la aplicación de contenedor para cargar la imagen de contenedor desde ACR.

  1. En el Azure Portal, abra la instancia de Azure Container Apps.

  2. En el mení de la izquierda, en Application, seleccione Containers.

  3. Seleccione Editar e implementar.

  4. En Imagen de contenedor, haga clic en el nombre de la imagen de contenedor existente.

  5. Actualice la siguiente configuración:

    Configuración Valor sugerido Descripción
    Origen de la imagen Azure Container Registry Seleccione Azure Container Registry como el origen de la imagen.
    Authentication Credenciales de administrador Use la opción de credenciales de usuario administrador que se ha habilitado anteriormente en el registro de contenedor. Si no habilita el usuario administrador, pero lo configura para usar una identidad administrada, deberá escribir manualmente la imagen y la etiqueta en el formulario.
    Registro myregistry.azurecr.io Seleccione el Azure Container Registry que creó anteriormente.
    Imagen aspnetapp Seleccione la imagen de Docker que creó e insertó en ACR anteriormente.
    Etiqueta de imagen v1 Seleccione la etiqueta de imagen de la lista.
  6. Seleccione Guardar y, a continuación, Crear para implementar la actualización en Azure Container App.

Vaya a la dirección URL de la aplicación de contenedor de Azure

En el Azure Portal, en la instancia de Azure Container Apps, vaya a la pestaña Información general y abra la dirección URL de la aplicación.

La página web tiene este aspecto:

Screenshot of an internet browser displaying the app running.

Limpieza de recursos

Si no quiere seguir usando los recursos que se han creado en este artículo, elimine el grupo de recursos que creó aquí para evitar cargos.

Importante

La eliminación de un grupo de recursos es irreversible. El grupo de recursos y todos los recursos que contiene se eliminan permanentemente. Asegúrese de que no elimina por accidente el grupo de recursos o los recursos equivocados. Si creó los recursos para este artículo en un grupo de recursos que contenga los recursos que desee conservar, elimine cada recurso de forma individual desde su panel respectivo, en lugar de eliminar el grupo de recursos.

  1. Inicie sesión en Azure Portal y después seleccione Grupos de recursos.
  2. En el cuadro de texto Filtrar por nombre, escriba el nombre del grupo de recursos.
  3. En la lista resultados, seleccione el nombre del grupo de recursos para ver la información general.
  4. Seleccione Eliminar grupo de recursos.
  5. Se le pedirá que confirme la eliminación del grupo de recursos. Escriba el nombre del grupo de recursos para confirmar y seleccione Eliminar.

Transcurridos unos instantes, el grupo de recursos y todos sus recursos se eliminan.

Pasos siguientes

En esta guía de inicio rápido:

  • Conexión de Azure App Configuration a Azure Container Apps
  • Se usa Docker para compilar una imagen de contenedor a partir de una aplicación de ASP.NET Core con la configuración de App Configuration
  • Se creó una instancia de Azure Container Registry
  • Se insertó la imagen en la instancia de Azure Container Registry
  • Se agregó la imagen de contenedor a Azure Container Apps
  • Vaya a la dirección URL de la instancia de Azure Container Apps actualizada con la configuración que configuró en el almacén de App Configuration.

La identidad administrada permite que un recurso de Azure acceda a otro sin mantener secretos. Puede simplificar el acceso desde Container Apps a otros recursos de Azure. Para obtener más información, consulte cómo acceder a App Configuration mediante la identidad administrada y cómo [acceder a Container Registry mediante la identidad administrada].

Para aprender a configurar una aplicación de ASP.NET Core para actualizar dinámicamente la configuración, vaya al siguiente tutorial.