Создание приложения ASP.NET Core в контейнере Docker в Службе приложений из Реестра контейнеров Azure

При помощи этого примера сценария создается группа ресурсов, план службы приложений Linux и приложение. Затем приложение ASP.NET Core развертывается с использованием контейнера Docker из реестра контейнеров Azure.

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

Вам понадобится Azure CLI версии 2.0.52 или более поздней. Чтобы узнать версию, выполните команду az --version. Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI.

Пример скрипта

# Create a resource group.
az group create --name myResourceGroup --location westus

# Create an Azure Container Registry.
az acr create --name <registry_name> --resource-group myResourceGroup --location westus --sku basic --admin-enabled true --query loginServer --output tsv

# Show ACR credentials.
az acr credential show --name <registry_name> --resource-group myResourceGroup --query [username,passwords[?name=='password'].value] --output tsv

# Before continuing, save the ACR credentials and registry URL. You will need this information in the commands below.

# Pull from Docker.
docker login <acr_registry_name>.azurecr.io -u <registry_user>
docker pull <registry_user/container_name:version>

# Tag Docker image.
docker tag <registry_user/container_name:version> <acr_registry_name>.azurecr.io/<container_name:version>

# Push container image to Azure Container Registry.
docker push <acr_registry_name>.azurecr.io/<container_name:version>

# Create an App Service plan.
az appservice plan create --name AppServiceLinuxDockerPlan --resource-group myResourceGroup --location westus --is-linux --sku S1

# Create a web app.
az webapp create --name <app_name> --plan AppServiceLinuxDockerPlan --resource-group myResourceGroup --deployment-container-image-name <acr_registry_name>.azurecr.io/<container_name:version>

# Configure web app with a custom Docker Container from Azure Container Registry.
az webapp config container set --resource-group myResourceGroup --name <app_name> --docker-registry-server-url http://<acr_registry_name>.azurecr.io --docker-registry-server-user <registry_user> --docker-registry-server-password <registry_password>

Очистка развертывания

Выполнив пример сценария, можно удалить группу ресурсов и все связанные с ней ресурсы при помощи приведенной ниже команды.

az group delete --name myResourceGroup

Описание скрипта

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

Get-Help Примечания
az group create Создает группу ресурсов, в которой хранятся все ресурсы.
az appservice plan create Создает план службы приложений.
az webapp create Создает приложение Службы приложений.
az webapp config container set Настраивает контейнер Docker для приложения Службы приложений.

Дальнейшие действия

Дополнительные сведения об Azure CLI см. в документации по Azure CLI.

Дополнительные примеры скриптов Azure CLI для службы приложений см. в документации по службе приложений Azure.