Краткое руководство. Использование Конфигурация приложений Azure в приложениях контейнеров Azure
В этом кратком руководстве вы используете Конфигурация приложений Azure в приложении, работающем в приложениях контейнеров Azure. Таким образом, вы можете централизировать хранилище и управление конфигурацией приложений в контейнерных приложениях. В этом кратком руководстве используется приложение ASP.NET Core, созданное в кратком руководстве. Создание приложения ASP.NET Core с помощью Конфигурация приложений. Вы контейнеризируете приложение и развертываете его в приложениях контейнеров Azure. Выполните краткое руководство, прежде чем продолжить.
Совет
При выполнении этого краткого руководства рекомендуется зарегистрировать все новые ресурсы в одной группе ресурсов, чтобы можно было перегруппировать их все в одном месте и удалить их быстрее, если они больше не нужны.
Необходимые компоненты
- Приложение с помощью хранилища Конфигурация приложений. Если у вас нет экземпляра, создайте экземпляр с помощью краткого руководства. Создание приложения ASP.NET Core с помощью Конфигурация приложений.
- Экземпляр приложений контейнеров Azure. Если у вас нет экземпляра, создайте экземпляр с помощью портал Azure или ИНТЕРФЕЙСА командной строки.
- Docker Desktop
- Интерфейс командной строки Azure
Подключение Конфигурация приложений Azure к приложению контейнера
В портал Azure перейдите к экземпляру приложения-контейнера.
Следуйте краткому руководству по соединителю служб для приложений контейнеров Azure, чтобы создать подключение к службе для хранилища Конфигурация приложений с помощью следующих параметров.
На вкладке Основные сведения задайте следующие параметры:
На вкладке "Проверка подлинности":
- Выберите тип проверки подлинности управляемого удостоверения, назначаемого системой
- Развернуть меню "Дополнительно"
- Назначение удостоверения роли чтения данных Конфигурация приложений
- В разделе "Сведения о конфигурации" вы найдете переменную среды с именем
AZURE_APPCONFIGURATION_ENDPOINT
. Щелкните значок карандаша справа и измените имя переменной среды, чтобы она соответствовала имени переменной в приложении, из которой загружается конечная точка Конфигурация приложений. Если вы создали приложение после краткого руководства ASP.NET Core, имя переменной —Endpoints:AppConfiguration
это . При изменении имени переменной замените двоеточие двойным подчеркиванием, чтобы он сталEndpoints__AppConfiguration
. Если вы работаете с другим приложением, введите соответствующее имя переменной среды, а затем нажмите кнопку "Готово".
Используйте значения по умолчанию для всего остального.
При создании подключения в
Endpoints__AppConfiguration
контейнер ресурса приложения-контейнера добавляется переменная среды. Его значение является ссылкой на секрет приложения контейнера, конечную точку вашего хранилища Конфигурация приложений.
Создание контейнера
Выполните команду dotnet publish, чтобы создать приложение в режиме выпуска и создать ресурсы в опубликованной папке.
dotnet publish -c Release -o published
Создайте файл с именем Dockerfile в каталоге, содержащий CSPROJ-файл, откройте его в текстовом редакторе и введите следующее содержимое. Dockerfile — это текстовый файл, который не имеет расширения и используется для создания образа контейнера.
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS runtime WORKDIR /app COPY published/ ./ ENTRYPOINT ["dotnet", "TestAppConfig.dll"]
Создайте контейнер, выполнив следующую команду.
docker build --tag aspnetapp .
создадите экземпляр реестра контейнеров Azure;
Создание экземпляра службы "Реестр контейнеров Azure" (ACR). ACR позволяет создавать, хранить образы контейнеров и управлять ими.
- Чтобы создать реестр контейнеров, выполните Реестр контейнеров Azure краткое руководство.
- После завершения развертывания откройте экземпляр ACR и в меню слева выберите "Параметры > доступа".
- Запишите значение сервера входа, указанное на этой странице. Эти сведения будут использоваться на следующем шаге.
- Переключение пользователя администратора на включено. Этот параметр позволяет подключить ACR к приложениям контейнеров Azure с помощью учетных данных администратора. Кроме того, вы можете оставить его отключенным и настроить приложение-контейнер для извлечения образов из реестра с помощью управляемого удостоверения.
Принудительная отправка образов в Реестр контейнеров Azure
Отправьте образ Docker в созданный ранее ACR.
Выполните команду az acr login, чтобы войти в реестр.
az acr login --name myregistry
Команда возвращается
Login Succeeded
после успешного входа.Используйте тег docker, чтобы пометить соответствующие сведения о изображении.
docker tag aspnetapp myregistry.azurecr.io/aspnetapp:v1
Совет
Чтобы просмотреть список существующих образов и тегов Docker, выполните команду
docker image ls
. В этом сценарии должно отображаться по крайней мере два изображения:aspnetapp
иmyregistry.azurecr.io/aspnetapp
.Используйте 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
Откройте Реестр контейнеров Azure в портал Azure и убедитесь, что в репозиториях вы можете увидеть новый репозиторий.
Добавление образа контейнера в приложения контейнеров Azure
Обновите приложение-контейнер, чтобы загрузить образ контейнера из ACR.
В портал Azure откройте экземпляр Azure Container Apps.
В меню слева в разделе "Приложение" выберите "Контейнеры".
Выберите Изменить и развернуть.
В разделе "Образ контейнера" щелкните имя существующего образа контейнера.
Обновите следующие параметры:
Параметр Предлагаемое значение Description Источник изображения Реестр контейнеров Azure; Выберите Реестр контейнеров Azure в качестве источника изображения. Проверка подлинности Учетные данные администратора Используйте параметр учетных данных пользователя администратора, который был включен ранее в реестре контейнеров. Если пользователь администратора не включен, но настроен на использование управляемого удостоверения, необходимо вручную ввести изображение и тег в форме. Реестр myregistry.azurecr.io Выберите созданный ранее Реестр контейнеров Azure. Изображения aspnetapp Выберите созданный образ Docker и отправьте его в ACR ранее. Тег образа версия 1 Выберите тег изображения из списка. Выберите "Сохранить" и "Создать", чтобы развернуть обновление в приложении контейнера Azure.
Перейдите по URL-адресу приложения контейнера Azure
В портал Azure в экземпляре приложений контейнеров Azure перейдите на вкладку "Обзор" и откройте URL-адрес приложения.
Веб-страница выглядит следующим образом:
Очистка ресурсов
Если вы не планируете в дальнейшем использовать ресурсы, созданные при работе с этой статьей, удалите созданную группу ресурсов, чтобы избежать расходов.
Внимание
Удаление группы ресурсов — процесс необратимый. Группа ресурсов и все содержащиеся в ней ресурсы удаляются без возможности восстановления. Будьте внимательны, чтобы случайно не удалить не те ресурсы или группу ресурсов. Если ресурсы для работы с этой статьей созданы в группе ресурсов, которая содержит другие нужные ресурсы, удалите каждый ресурс отдельно в соответствующей области ресурса, чтобы не удалять группу ресурсов.
- Войдите на портал Azure и выберитеГруппы ресурсов.
- Введите имя группы ресурсов в поле Фильтровать по имени.
- В списке результатов выберите имя группы ресурсов, чтобы просмотреть общие сведения.
- Выберите команду Удалить группу ресурсов.
- Подтвердите операцию удаления группы ресурсов. Введите имя группы ресурсов, которую необходимо удалить, и нажмите Удалить.
Через некоторое время группа ресурсов и все ее ресурсы будут удалены.
Связанный контент
В этом кратком руководстве вы:
- Подключение Конфигурация приложений Azure к приложениям контейнеров Azure
- Используется Docker для создания образа контейнера из приложения ASP.NET Core с параметрами Конфигурация приложений
- Создание экземпляра Реестр контейнеров Azure
- Отправка изображения в экземпляр Реестр контейнеров Azure
- Добавлен образ контейнера в приложения контейнеров Azure
- Перейдите по URL-адресу экземпляра приложений контейнеров Azure, обновленного с параметрами, настроенными в хранилище Конфигурация приложений.
Управляемое удостоверение позволяет одному ресурсу Azure получить доступ к другому, не сохраняя секреты. Вы можете упростить доступ из контейнерных приложений к другим ресурсам Azure. Дополнительные сведения см. в статье о том, как получить доступ к Конфигурация приложений с помощью управляемого удостоверения и как получить доступ к реестру контейнеров с помощью управляемого удостоверения.
Чтобы узнать, как настроить веб-приложение ASP.NET Core для динамического обновления параметров конфигурации, перейдите к следующему руководству.