Поделиться через


Краткое руководство: Использование конструктора API данных с Azure Cosmos DB для NoSQL и статических веб-приложений Azure

В этом кратком руководстве вы развертываете Data API builder (DAB) в качестве контейнера Docker в контейнерных приложениях Azure. Вы используете шаблон интерфейса командной строки разработчика Azure (AZD) для развертывания DAB вместе с базой данных Azure Cosmos DB для NoSQL с использованием последних лучших практик. Шаблон также развертывает пример веб-приложения, которое подключается к конечной точке DAB с помощью GraphQL.

Необходимые условия

  • Интерфейс командной строки разработчика Azure
  • .NET 9.0

Если у вас нет учетной записи Azure, создайте бесплатную учетную запись перед началом работы.

Инициализация проекта

Используйте интерфейс командной строки разработчика Azure (azd) для создания учетной записи Azure Cosmos DB для NoSQL, развертывания DAB в качестве контейнерного решения и развертывания контейнерного примера приложения. Пример приложения использует DAB для запроса примеров данных.

  1. Откройте терминал в пустом каталоге.

  2. Если вы еще не прошли проверку подлинности, выполните проверку подлинности в интерфейсе командной строки разработчика Azure с помощью azd auth login. Выполните действия, указанные средством для проверки подлинности в CLI с помощью предпочитаемых учетных данных Azure.

    azd auth login
    
  3. Используйте azd init для инициализации проекта.

    azd init --template dab-azure-cosmos-db-nosql-quickstart
    
  4. Во время инициализации настройте уникальное имя среды.

  5. Разверните полное решение в Azure с помощью azd up. Шаблоны Bicep развертывают учетную запись Azure Cosmos DB для NoSQL DAB в приложениях контейнеров Azure и пример веб-приложения.

    azd up
    
  6. Во время процесса настройки выберите ваш тариф и желаемый регион. Дождитесь завершения процесса подготовки. Процесс может занять около семи минут.

  7. После завершения подготовки ресурсов Azure в выходные данные будет включен URL-адрес работающего веб-приложения.

    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.
    
  8. Запишите значения для URL-адреса API и веб-служб . Эти значения используются далее в этом руководстве.

Настройка подключения к базе данных

Теперь перейдите к каждому контейнеризованному приложению в приложениях контейнеров Azure, чтобы убедиться, что они работают должным образом.

  1. Сначала перейдите по URL-адресу для службы API . Этот URL-адрес ссылается на активный экземпляр DAB.

  2. Просмотрите выходные данные JSON из DAB. Он должен указать, что контейнер DAB запущен и состояние является работоспособным.

    {
      "status": "healthy",
      "version": "1.1.7",
      "app-name": "dab_oss_1.1.7"
    }
    
  3. Перейдите к пути /graphql, относительному для DAB экземпляра. Этот URL-адрес должен открыть интегрированную среду разработки (IDE) Nitro GraphQL.

  4. В интегрированной среде разработки Nitro создайте новый документ и запустите этот запрос, чтобы получить все 100 элементов в контейнере products Azure Cosmos DB для NoSQL.

    query {
      products {
        items {
        id
        name
        description
        sku
        price
        cost
        }
      }
    }
    
  5. Наконец, перейдите по URL-адресу веб-сервиса . Этот URL-адрес ссылается на работающее веб-приложение, которое подключается к конечной точке GraphQL, к которому вы обращаетесь на предыдущем шаге.

  6. Просмотрите работающее веб-приложение и просмотрите выходные данные.

    снимок экрана: работающее веб-приложение в приложениях контейнеров Azure.

Убирать

Если вам больше не нужен пример приложения или ресурсов, удалите соответствующее развертывание и все ресурсы.

  1. Удалите развертывание из подписки Azure.

    azd down
    
  2. Удалите работающее пространство кода, чтобы максимально увеличить объем хранилища и основных прав, если вы используете GitHub Codespaces.

Следующий шаг