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


Краткое руководство. Использование Конфигурация приложений Azure в приложениях контейнеров Azure

В этом кратком руководстве вы используете Конфигурация приложений Azure в приложении, работающем в приложениях контейнеров Azure. Таким образом, вы можете централизировать хранилище и управление конфигурацией приложений в контейнерных приложениях. В этом кратком руководстве используется приложение ASP.NET Core, созданное в кратком руководстве. Создание приложения ASP.NET Core с помощью Конфигурация приложений. Вы контейнеризируете приложение и развертываете его в приложениях контейнеров Azure. Выполните краткое руководство, прежде чем продолжить.

Совет

При выполнении этого краткого руководства рекомендуется зарегистрировать все новые ресурсы в одной группе ресурсов, чтобы можно было перегруппировать их все в одном месте и удалить их быстрее, если они больше не нужны.

Необходимые компоненты


Подключение Конфигурация приложений Azure к приложению контейнера

  1. В портал Azure перейдите к экземпляру приложения-контейнера.

  2. Следуйте краткому руководству по соединителю служб для приложений контейнеров Azure, чтобы создать подключение к службе для хранилища Конфигурация приложений с помощью следующих параметров.

    1. На вкладке Основные сведения задайте следующие параметры:

      • В разделе "Тип службы" выберите Конфигурация приложений

      • В разделе Конфигурация приложений выберите свое хранилище Конфигурация приложений.

        Снимок экрана: платформа Azure с формой в меню

    2. На вкладке "Проверка подлинности":

      • Выберите тип проверки подлинности управляемого удостоверения, назначаемого системой
      • Развернуть меню "Дополнительно"
      • Назначение удостоверения роли чтения данных Конфигурация приложений
      • В разделе "Сведения о конфигурации" вы найдете переменную среды с именем AZURE_APPCONFIGURATION_ENDPOINT. Щелкните значок карандаша справа и измените имя переменной среды, чтобы она соответствовала имени переменной в приложении, из которой загружается конечная точка Конфигурация приложений. Если вы создали приложение после краткого руководства ASP.NET Core, имя переменной — Endpoints:AppConfigurationэто . При изменении имени переменной замените двоеточие двойным подчеркиванием, чтобы он стал Endpoints__AppConfiguration. Если вы работаете с другим приложением, введите соответствующее имя переменной среды, а затем нажмите кнопку "Готово".
    3. Используйте значения по умолчанию для всего остального.

    При создании подключения в Endpoints__AppConfiguration контейнер ресурса приложения-контейнера добавляется переменная среды. Его значение является ссылкой на секрет приложения контейнера, конечную точку вашего хранилища Конфигурация приложений.

Создание контейнера

  1. Выполните команду dotnet publish, чтобы создать приложение в режиме выпуска и создать ресурсы в опубликованной папке.

    dotnet publish -c Release -o published
    
  2. Создайте файл с именем Dockerfile в каталоге, содержащий CSPROJ-файл, откройте его в текстовом редакторе и введите следующее содержимое. Dockerfile — это текстовый файл, который не имеет расширения и используется для создания образа контейнера.

    FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS runtime
    WORKDIR /app
    COPY published/ ./
    ENTRYPOINT ["dotnet", "TestAppConfig.dll"]
    
  3. Создайте контейнер, выполнив следующую команду.

    docker build --tag aspnetapp .
    

создадите экземпляр реестра контейнеров Azure;

Создание экземпляра службы "Реестр контейнеров Azure" (ACR). ACR позволяет создавать, хранить образы контейнеров и управлять ими.

  1. Чтобы создать реестр контейнеров, выполните Реестр контейнеров Azure краткое руководство.
  2. После завершения развертывания откройте экземпляр ACR и в меню слева выберите "Параметры > доступа".
  3. Запишите значение сервера входа, указанное на этой странице. Эти сведения будут использоваться на следующем шаге.
  4. Переключение пользователя администратора на включено. Этот параметр позволяет подключить ACR к приложениям контейнеров Azure с помощью учетных данных администратора. Кроме того, вы можете оставить его отключенным и настроить приложение-контейнер для извлечения образов из реестра с помощью управляемого удостоверения.

Принудительная отправка образов в Реестр контейнеров Azure

Отправьте образ Docker в созданный ранее ACR.

  1. Выполните команду az acr login, чтобы войти в реестр.

    az acr login --name myregistry
    

    Команда возвращается Login Succeeded после успешного входа.

  2. Используйте тег docker, чтобы пометить соответствующие сведения о изображении.

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

    Совет

    Чтобы просмотреть список существующих образов и тегов Docker, выполните команду docker image ls. В этом сценарии должно отображаться по крайней мере два изображения: aspnetapp и myregistry.azurecr.io/aspnetapp.

  3. Используйте docker push-отправку для отправки образа в реестр контейнеров. В этом примере создается репозиторий aspnetapp в ACR, aspnetapp содержащий изображение. В приведенном ниже примере замените заполнители <login-server<image-name> и <tag> значением сервера входа ACR, именем образа и тегом изображения.

    Метод:

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

    Пример:

    docker push myregistry.azurecr.io/aspnetapp:v1
    
  4. Откройте Реестр контейнеров Azure в портал Azure и убедитесь, что в репозиториях вы можете увидеть новый репозиторий.

    Снимок экрана: платформа Azure с репозиторием в реестрах контейнеров Azure.

Добавление образа контейнера в приложения контейнеров Azure

Обновите приложение-контейнер, чтобы загрузить образ контейнера из ACR.

  1. В портал Azure откройте экземпляр Azure Container Apps.

  2. В меню слева в разделе "Приложение" выберите "Контейнеры".

  3. Выберите Изменить и развернуть.

  4. В разделе "Образ контейнера" щелкните имя существующего образа контейнера.

  5. Обновите следующие параметры:

    Параметр Предлагаемое значение Description
    Источник изображения Реестр контейнеров Azure; Выберите Реестр контейнеров Azure в качестве источника изображения.
    Проверка подлинности Учетные данные администратора Используйте параметр учетных данных пользователя администратора, который был включен ранее в реестре контейнеров. Если пользователь администратора не включен, но настроен на использование управляемого удостоверения, необходимо вручную ввести изображение и тег в форме.
    Реестр myregistry.azurecr.io Выберите созданный ранее Реестр контейнеров Azure.
    Изображения aspnetapp Выберите созданный образ Docker и отправьте его в ACR ранее.
    Тег образа версия 1 Выберите тег изображения из списка.
  6. Выберите "Сохранить" и "Создать", чтобы развернуть обновление в приложении контейнера Azure.

Перейдите по URL-адресу приложения контейнера Azure

В портал Azure в экземпляре приложений контейнеров Azure перейдите на вкладку "Обзор" и откройте URL-адрес приложения.

Веб-страница выглядит следующим образом:

Снимок экрана: интернет-браузер с запущенным приложением.

Очистка ресурсов

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

Внимание

Удаление группы ресурсов — процесс необратимый. Группа ресурсов и все содержащиеся в ней ресурсы удаляются без возможности восстановления. Будьте внимательны, чтобы случайно не удалить не те ресурсы или группу ресурсов. Если ресурсы для работы с этой статьей созданы в группе ресурсов, которая содержит другие нужные ресурсы, удалите каждый ресурс отдельно в соответствующей области ресурса, чтобы не удалять группу ресурсов.

  1. Войдите на портал Azure и выберитеГруппы ресурсов.
  2. Введите имя группы ресурсов в поле Фильтровать по имени.
  3. В списке результатов выберите имя группы ресурсов, чтобы просмотреть общие сведения.
  4. Выберите команду Удалить группу ресурсов.
  5. Подтвердите операцию удаления группы ресурсов. Введите имя группы ресурсов, которую необходимо удалить, и нажмите Удалить.

Через некоторое время группа ресурсов и все ее ресурсы будут удалены.

В этом кратком руководстве вы:

  • Подключение Конфигурация приложений Azure к приложениям контейнеров Azure
  • Используется Docker для создания образа контейнера из приложения ASP.NET Core с параметрами Конфигурация приложений
  • Создание экземпляра Реестр контейнеров Azure
  • Отправка изображения в экземпляр Реестр контейнеров Azure
  • Добавлен образ контейнера в приложения контейнеров Azure
  • Перейдите по URL-адресу экземпляра приложений контейнеров Azure, обновленного с параметрами, настроенными в хранилище Конфигурация приложений.

Управляемое удостоверение позволяет одному ресурсу Azure получить доступ к другому, не сохраняя секреты. Вы можете упростить доступ из контейнерных приложений к другим ресурсам Azure. Дополнительные сведения см. в статье о том, как получить доступ к Конфигурация приложений с помощью управляемого удостоверения и как получить доступ к реестру контейнеров с помощью управляемого удостоверения.

Чтобы узнать, как настроить веб-приложение ASP.NET Core для динамического обновления параметров конфигурации, перейдите к следующему руководству.