Compartilhar via


Início Rápido: Usar o Data API Builder com o Azure Cosmos DB para NoSQL e Aplicativos de Contêiner do Azure

Neste início rápido, você implanta o DAB (Construtor de API de Dados) como um contêiner do Docker nos Aplicativos de Contêiner do Azure. Você usa um modelo da CLI do Desenvolvedor do Azure (AZD) para implantar o DAB juntamente com um banco de dados NoSQL do Azure Cosmos DB usando as práticas recomendadas mais recentes. O modelo também implanta um aplicativo web de exemplo que se conecta ao endpoint DAB usando GraphQL.

Pré-requisitos

  • Azure Developer CLI
  • .NET 9.0

Se você ainda não tiver uma conta do Azure, crie uma conta gratuita antes de começar.

Inicializar o projeto

Use a CLI do Desenvolvedor do Azure (azd) para criar uma conta do Azure Cosmos DB para NoSQL, implantar o DAB como uma solução em contêineres e implantar um aplicativo de exemplo em contêineres. O aplicativo de exemplo usa DAB para consultar dados de exemplo.

  1. Abra um terminal em um diretório vazio.

  2. Se você ainda não estiver autenticado, autentique-se na Azure Developer CLI usando azd auth login. Siga as etapas especificadas pela ferramenta para se autenticar na CLI usando suas credenciais preferenciais do Azure.

    azd auth login
    
  3. Use azd init para inicializar o projeto.

    azd init --template dab-azure-cosmos-db-nosql-quickstart
    
  4. Durante a inicialização, configure um nome de ambiente exclusivo.

  5. Verifique se o Docker está em execução em seu computador antes de continuar para a próxima etapa.

  6. Implantar a solução completa no Azure usando azd up. Os modelos do Bicep implantam um conta do Azure Cosmos DB para NoSQL DAB para Aplicativos de Contêiner do Azure e um aplicativo Web de exemplo.

    azd up
    
  7. Durante o processo de provisionamento, selecione sua assinatura e o local desejado. Aguarde a conclusão do processo de provisionamento. O processo pode levar aproximadamente sete minutos.

  8. Depois que o provisionamento dos recursos do Azure for concluído, uma URL para o aplicativo Web em execução será incluída na saída.

    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 7 minutes 0 seconds.
    
  9. Registre os valores da URL dos serviços de API e web. Você usará esses valores mais adiante neste guia.

Configurar a conexão de banco de dados

Agora, navegue até cada aplicativo em contêineres nos Aplicativos de Contêiner do Azure para validar se eles estão funcionando conforme o esperado.

  1. Primeiro, navegue até a URL do serviço da API . Essa URL é vinculada à instância do DAB em execução.

  2. Observe o resultado JSON do DAB. Ele deve indicar que o contêiner da DAB está em execução, incluindo o status como íntegro.

    {
      "status": "healthy",
      "version": "1.4.35",
      "app-name": "dab_oss_1.4.35"
    }
    
  3. Navegue até o caminho relativo /graphql da instância do DAB. Essa URL deve abrir o IDE (ambiente de desenvolvimento integrado) do Nitro GraphQL.

  4. No IDE do Nitro, crie um novo documento e execute essa consulta para obter todos os 100 itens no contêiner products do Azure Cosmos DB para NoSQL.

    query {
      products {
        items {
        id
        name
        description
        sku
        price
        cost
        }
      }
    }
    
  5. Por fim, navegue até a URL do serviço Web . Essa URL aponta para o aplicativo web de exemplo em execução que se conecta ao endpoint GraphQL acessado anteriormente.

  6. Observe o aplicativo Web em execução e examine os dados de saída.

    Captura de tela do aplicativo Web em execução nos Aplicativos de Contêiner do Azure.

Limpeza

Quando você não precisar mais do aplicativo de exemplo ou dos recursos, remova a implantação correspondente e todos os recursos.

  1. Remova a implantação de sua assinatura do Azure.

    azd down
    
  2. Exclua o codespace em execução para maximizar seus direitos de armazenamento e de núcleo se você estiver usando o GitHub Codespaces.

Próxima etapa

pontos de extremidade GraphQL