Compartir a través de


Inicio rápido: Uso de Data API Builder con Azure Cosmos DB para NoSQL y Azure Container Apps

En este inicio rápido, implementará Data API Builder (DAB) como contenedor de Docker en Azure Container Apps. Use una plantilla de Azure Developer CLI (AZD) para implementar DAB junto con una base de datos de Azure Cosmos DB para NoSQL mediante los procedimientos recomendados más recientes. La plantilla también implementa una aplicación web de ejemplo que se conecta al punto de conexión de DAB mediante GraphQL.

Prerrequisitos

  • CLI para desarrolladores de Azure
  • .NET 9.0
  • suscripción de Azure en la que tenga al menos el rol de Colaborador
  • Docker se ejecuta localmente

Si no tiene una cuenta de Azure, cree una cuenta free antes de comenzar.

Inicialización del proyecto

Use la CLI para desarrolladores de Azure (azd) para crear una Azure Cosmos DB para NoSQL cuenta, implementar DAB como una solución en contenedor e implementar una aplicación de ejemplo en contenedor. La aplicación de ejemplo usa DAB para consultar datos de ejemplo.

  1. Abra un terminal en un directorio vacío.

  2. Si aún no está autenticado, autentíquese en la CLI del desarrollador de Azure mediante azd auth login. Siga los pasos especificados por la herramienta para autenticarse en la CLI mediante sus credenciales de Azure preferidas.

    azd auth login
    
  3. Ejecute para inicializar el proyecto.

    azd init --template dab-azure-cosmos-db-nosql-quickstart
    
  4. Durante la inicialización, configure un nombre de entorno único.

  5. Implemente la solución completa para Azure mediante azd up. Las plantillas de Bicep implementan una Azure Cosmos DB para NoSQL cuenta, DAB en Azure Container Apps, una aplicación web de ejemplo y una identidad administrada para el acceso seguro a datos.

    azd up
    
  6. Durante el proceso de aprovisionamiento, seleccione la suscripción y la ubicación deseada. Espere a que se complete el proceso de aprovisionamiento. El proceso puede tardar varios minutos en función de su región y suscripción.

  7. Una vez realizado el aprovisionamiento de los recursos de Azure, se incluye una dirección URL a la aplicación web en ejecución en la salida.

    Deploying services (azd deploy)
    
    (✓) Done: Deploying service api
    - Endpoint: <https://[container-app-sub-domain].azurecontainerapps.io>
    
    (✓) Done: Deploying service web
    - Endpoint: <https://[container-app-sub-domain].azurecontainerapps.io>
    
    SUCCESS: Your up workflow to provision and deploy to Azure completed in <duration>.
    
  8. Registre los valores para la URL de la API y los servicios web . Estos valores se usan más adelante en esta guía.

Configuración de la conexión de base de datos

Ahora, vaya a cada aplicación en contenedor en Azure Container Apps para validar que funcionan según lo previsto.

  1. En primer lugar, vaya a la dirección URL del servicio API de . Esta dirección URL vincula a la instancia de DAB en ejecución.

  2. Observe la salida JSON de DAB. Debe indicar que el contenedor DAB se está ejecutando y el estado es Saludable.

    {
        "status": "Healthy",
      "version": "1.4.35",
      "app-name": "dab_oss_1.4.35"
    }
    
    1. Acceda a la ruta de acceso relativa para la instancia DAB.
    • Si la aplicación se ejecuta en modo de desarrollo, esta dirección URL abre el entorno de desarrollo integrado (IDE) de Nitro GraphQL.
    • Si la aplicación se ejecuta en el modo Producción, Nitro no se muestra para la navegación del navegador. En ese caso, use la aplicación web de ejemplo u otro cliente de GraphQL.
    1. Si Nitro está disponible, cree un nuevo documento y ejecute esta consulta para obtener todos los 100 elementos del Azure Cosmos DB para NoSQL products contenedor.
    query {
      products {
        items {
        id
        name
        description
        sku
        price
        cost
        }
      }
    }
    
  3. Por último, navegue a la URL del servicio web . Esta dirección URL vincula a la aplicación web de ejemplo en ejecución que se conecta al punto de conexión de GraphQL al que ha accedido en el paso anterior.

  4. Observe la aplicación web en ejecución y revise los datos de salida.

    Captura de pantalla de la aplicación web en ejecución en Azure Container Apps.

Limpieza

Cuando ya no necesite la aplicación o los recursos de ejemplo, quite la implementación correspondiente y todos los recursos.

  1. Elimine la implementación de su suscripción de Azure.

    azd down
    
  2. Elimine el espacio de código en ejecución para maximizar los derechos de almacenamiento y núcleo si usa GitHub Codespaces.

Paso siguiente

puntos de conexión de GraphQL