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


AzureContainerApps@1. Задача "Развертывание контейнеров приложений Azure" версии 1

Задача Azure DevOps по созданию и развертыванию контейнерных приложений Azure.

Синтаксис

# Azure Container Apps Deploy v1
# An Azure DevOps Task to build and deploy Azure Container Apps.
- task: AzureContainerApps@1
  inputs:
  # advanced
    #workingDirectory: # string. Alias: cwd. Working Directory. 
    #appSourcePath: # string. Application source path. 
    azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection. 
    #acrName: # string. Azure Container Registry name. 
    #acrUsername: # string. Azure Container Registry username. 
    #acrPassword: # string. Azure Container Registry password. 
    #dockerfilePath: # string. Dockerfile path. 
    #imageToBuild: # string. Docker image to build. 
    #imageToDeploy: # string. Docker image to deploy. 
    #containerAppName: # string. Azure Container App name. 
    #resourceGroup: # string. Azure resource group name. 
    #containerAppEnvironment: # string. Azure Container App environment. 
    #runtimeStack: # string. Application runtime stack. 
    #targetPort: # string. Application target port. 
    #location: # string. Location of the Container App. 
    #environmentVariables: # string. Environment variables. 
    #ingress: # string. Ingress setting. 
    #yamlConfigPath: # string. YAML configuration file path. 
    #disableTelemetry: # boolean. Disable telemetry.

Входные данные

workingDirectory - Рабочий каталог
Входной псевдоним: cwd. string.

Текущий рабочий каталог, в котором выполняется скрипт. Empty — это корень репозитория (сборка) или артефакты (выпуск), то есть $(System.DefaultWorkingDirectory).


appSourcePath - Путь к источнику приложения
string.

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

При отправке нового изображения в ACR acrName требуются входные данные задачи и appSourcePath .


azureSubscription - Подключение azure Resource Manager
Входной псевдоним: connectedServiceNameARM. string. Обязательный.

Укажите подключение службы azure Resource Manager для развертывания. Это подключение к службе должно быть связано с подпиской Azure пользователя, в которой будет создано или обновлено контейнерное приложение. Это подключение к службе должно иметь соответствующие разрешения для внесения этих изменений в подписке, например роль участника.


acrName - имя Реестр контейнеров Azure
string.

Имя Реестр контейнеров Azure, в который будет отправлен запускаемый образ приложения.

При отправке нового изображения в ACR acrName требуются входные данные задачи и appSourcePath .


acrUsername - имя пользователя Реестр контейнеров Azure
string.

Имя пользователя, используемое для проверки подлинности push-запросов в предоставленный реестр Azure Contrainer. Если он не указан, маркер доступа будет создан с помощью az acr login и предоставлен в docker login для проверки подлинности запросов.


acrPassword - пароль Реестр контейнеров Azure
string.

Пароль, используемый для проверки подлинности push-запросов к предоставленному реестру Azure Contrainer. Если он не указан, маркер доступа будет создан с помощью az acr login и предоставлен в docker login для проверки подлинности запросов.


dockerfilePath - Путь к Dockerfile
string.

Относительный путь (_without префиксы файла (см. следующие примеры) к Dockerfile в предоставленном источнике приложения, который следует использовать для сборки образа, который затем отправляется в ACR и развертывается в контейнерном приложении. Если этот параметр не указан, эта задача будет проверка, если в корне предоставленного источника приложения есть файл с именем Dockerfile и использовать его для сборки образа. В противном случае для создания образа будет использоваться построитель Oryx++.


imageToBuild - Образ Docker для сборки
string.

Пользовательское имя образа, который должен быть создан, отправлен в ACR и развернут в приложении-контейнере с помощью этой задачи. Примечание. Это имя образа должно включать сервер ACR; Например, <acr-name>.azurecr.io/<repo>:<tag>. Если этот аргумент не указан, имя образа по умолчанию будет создано в виде <acr-name>.azurecr.io/ado-task/container-app:<build-id>.<build-number>.


imageToDeploy - Образ Docker для развертывания
string.

Имя образа, который уже был отправлен в ACR и будет развернут в приложении-контейнере с помощью этой задачи. Примечание. Имя образа должно содержать сервер ACR; Например, <acr-name>.azurecr.io/<repo>:<tag>. Если этот аргумент не указан, будет использоваться значение, указанное (или определенное) для аргумента imageToBuild. Если этот образ найден в экземпляре ACR, требующем проверки подлинности для извлечения, acrName можно предоставить аргумент или acrUsername аргументы и acrPassword для проверки подлинности запросов к экземпляру ACR.


containerAppName - Имя контейнера приложения Azure
string.

Имя приложения-контейнера Azure, которое будет создано или обновлено. Если этот параметр не указан, это значение будет иметь вид ado-task-app-<build-id>-<build-number>.


resourceGroup - Имя группы ресурсов Azure
string.

Существующая группа ресурсов, в которую будет создано контейнерное приложение Azure (или в настоящее время существует). Если этот параметр не указан, это значение будет иметь вид <container-app-name>-rg.


containerAppEnvironment - Среда контейнеров приложений Azure
string.

Имя среды приложения-контейнера Azure для использования с приложением. Если этот параметр не указан, будет использоваться существующая среда в группе ресурсов контейнерного приложения. В противном случае среда будет создана в формате <container-app-name>-env.


runtimeStack - Стек среды выполнения приложений
string.

Стек версий платформы, используемый в окончательном образе запускаемого приложения, развернутом в контейнерном приложении. Значение должно быть указано в формировании <platform>:<version>. Если оно не указано, это значение определяется Oryx на основе содержимого предоставленного приложения. Дополнительные сведения о поддерживаемых стеках среды выполнения для Oryx см. в этом документе .


targetPort - Целевой порт приложения
string.

Целевой порт, прослушиваемый приложением-контейнером. Если этот параметр не указан, это значение будет "80" для приложений Python и "8080" для всех других поддерживаемых платформ.


location - Расположение приложения-контейнера
string.

Расположение, в которое будет развернуто приложение-контейнер (и другие созданные ресурсы).


environmentVariables - Переменные среды
string.

Список переменных среды для контейнера. Разделенные пробелами значения в формате key=value. Пустая строка для очистки существующих значений. Значение префикса с "secretref:" для ссылки на секрет.


ingress - Параметр входящего трафика
string.

Возможные параметры: внешний, внутренний, отключенный. Если задано значение external (значение по умолчанию, если оно не указано при создании приложения-контейнера), приложение-контейнер будет отображаться из Интернета или виртуальной сети в зависимости от настроенной конечной точки среды приложения. Если задано значение internal, контейнерное приложение будет отображаться только в среде приложения. Если задано значение disabled, входящий трафик будет отключен для этого приложения-контейнера и не будет иметь конечной точки HTTP или TCP.


yamlConfigPath - Путь к файлу конфигурации YAML
string.

Полный путь (в выполняемом агенте Azure Pipelines) к YAML-файлу с подробными сведениями о конфигурации приложения-контейнера.

Свойство resourceGroup в файле конфигурации YAML не используется ; значение для этого происходит из аргумента resourceGroup , предоставленного задаче, или из имени группы ресурсов по умолчанию, созданного задачей. Все остальные свойства, предоставленные в файле конфигурации YAML, переопределяют значения, указанные в качестве аргументов для этой задачи; Например, если containerAppName аргумент предоставляется задаче, а name свойство задано в файле конфигурации YAML, name свойство в ФАЙЛЕ YAML будет использоваться при создании или обновлении приложения-контейнера.

Аргументы источника образа и приложения (например, appSourcePath, imageToDeploy) по-прежнему будут использоваться для первой сборки и (или) отправки образа, используемого приложением-контейнером. В этом случае предоставленный файл конфигурации YAML должен ссылаться на образ, указанный параметром imageToDeploy (или imageToBuild, в зависимости от сценария).

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

В настоящее время YAML-файл не поддерживает настройку проверки подлинности управляемого удостоверения для используемого реестра контейнеров. Дополнительные сведения об этой проблеме см. в этой проблеме на GitHub.

В случаях, когда yamlConfigPath указан аргумент, YAML-файл будет передаваться в соответствующую az containerapp команду: create илиupdate в зависимости от вашего сценария. Дополнительные сведения о предполагаемом поведении при предоставлении файла конфигурации YAML см. в документах, связанных с соответствующими командами.

Дополнительные сведения о структуре файла конфигурации YAML см. на этом сайте.


disableTelemetry - Отключение телеметрии
boolean.

Если задано значение true, эта задача Azure DevOps не собирает данные телеметрии. Если задано значение false или если этот аргумент не указан, в корпорацию Майкрософт будут отправляться данные телеметрии о сценарии сборки и развертывания контейнерного приложения, предназначенного для этой задачи Azure DevOps.


Параметры управления задачами

Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.

Выходные переменные

Нет.

Remarks

Эта задача Azure Pipelines позволяет пользователям легко развертывать источник приложения в контейнерном приложении Azure в рабочем процессе Azure Pipelines, предоставляя ранее созданный образ, Dockerfile, из которой можно создать образ, или с помощью построителя для создания образа запускаемого приложения для пользователя.

Задача имеет следующие два шаблона использования.

  • Отправка изображения в ACR — при отправке нового образа в ACR acrName требуются входные данные задачи и appSourcePath .
  • Развертывание ранее отправленного образа — при развертывании ранее отправленного образа imageToDeploy требуется ввод задачи. Если этот образ найден в экземпляре ACR, требующем проверки подлинности для извлечения, acrName можно предоставить аргумент или acrUsername аргументы и acrPassword для проверки подлинности запросов к экземпляру ACR.

Примечание

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

Если файл Dockerfile не найден или не указан в предоставленном источнике приложения, эта задача выполняет следующие действия:

  • Использование Oryx++ Builder для создания источника приложения с помощью Oryx для создания образа приложения, доступного для запуска
  • Отправляет этот образ запускаемого приложения в предоставленный Реестр контейнеров Azure
  • Создание или обновление приложения-контейнера на основе этого образа

Если dockerfile найден или обнаружен в источнике приложения, построитель не будет использоваться, а образ будет создан с помощью вызова docker build , а приложение-контейнер будет создано или обновлено на основе этого образа.

Если ранее созданный образ уже был отправлен в экземпляр ACR и предоставлен для этой задачи, источник приложения не требуется, и образ будет использоваться при создании или обновлении приложения-контейнера.

Выполнение этой задачи на агентах, размещенных в Майкрософт

Если вы выполняете эту задачу в агенте, размещенном в Майкрософт, вы можете обнаружить, что эта задача не может успешно выполняться в следующих операционных системах:

  • macOS
    • Средства выполнения macOS, предоставляемые корпорацией Майкрософт, не устанавливаются вместе с Docker (дополнительные сведения см. здесь); в результате эта задача не может выполнять какие-либо docker команды, такие как отправка встроенных образов запускаемых приложений в ACR.
  • Windows
    • Средства выполнения Windows, предоставляемые корпорацией Майкрософт, поступают с установленным Docker, но по умолчанию образы на основе Linux не могут быть удалены. в результате этой задаче не удается извлечь построитель Oryx, чтобы создать доступные для запуска образы приложений из предоставленного источника приложения.

Дополнительные сведения см. в разделе предварительных требований к Docker ниже.

Уведомление о сборе данных и телеметрии

По умолчанию эта задача Azure DevOps собирает следующие данные для майкрософт:

  • Сценарий сборки и развертывания приложения-контейнера, предназначенный для пользователя
    • т. е. использовал oryx++ Builder, использовал предоставленный или найденный Файл Dockerfile или предоставил ранее созданный образ.
    • Примечание. Имя образа не собирается
  • Время обработки задачи в миллисекундах
  • Результат задачи
    • т. е. успешно или неудачно
  • Если используется Oryx++ Builder, события и метрики, связанные с созданием предоставленного приложения с помощью Oryx

Если вы хотите отключить сбор данных, задайте для аргумента disableTelemetry значение true.

Предварительные требования

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

Подключение к службе Azure DevOps

Для развертывания в Azure подписку Azure необходимо связать с Team Foundation Server или Azure Pipelines с помощью вкладки Службы в разделе параметров. Добавьте подписку Azure для использования в определении Сборка или Release Management, открыв экран Администрирование учетной записи (значок шестеренки в правом верхнем углу экрана), а затем щелкните вкладку Службы.

Создайте конечную точку службы ARM и используйте тип конечной точки Azure Resource Manager. Дополнительные сведения о создании подключений к службе см. в этом документе.

Azure CLI

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

Docker

Для выполнения этой задачи необходимо установить Docker в агенте Azure Pipelines для отправки образов в предоставленный Реестр контейнеров Azure. Дополнительные сведения об установке Docker в агенте см. в этом документе.

Кроме того, пользователи, выполняющий эту задачу с помощью агента Windows, могут столкнуться с проблемой, из-за которой не удается извлечь образы на основе Linux. Чтобы устранить эту проблему, посетите этот сайт или найдите DockerCli.exe файл в агенте (обычно в папке Program Files\Docker\Docker ) и запустите

& `.\DockerCli.exe` -SwitchDaemon

Если Docker не установлен в агенте, выполняя эту задачу, по-прежнему включены следующие сценарии:

  • Предоставление ранее созданного образа аргументу imageToDeploy , который развертывается приложением-контейнером

Если Docker находится в агенте, но не может работать с образами под управлением Linux, по-прежнему включены следующие сценарии:

  • Предоставление ранее созданного образа аргументу imageToDeploy , который развертывается приложением-контейнером
  • Предоставление в Dockerfile качестве части источника приложения, который будет создан и развернут с помощью приложения-контейнера
    • Примечание. Не Dockerfile может иметь слои образов на основе Linux.

cli pack

Интерфейс командной строки пакета поддерживается проектом Cloud Native Buildpacks и используется этой задачей для создания доступных для запуска образов приложений для пользователя при предоставлении исходного кода приложения и отсутствии дополнительных файлов Dockerfile. Построитель был создан компанией Oryx для получения исходного кода приложения, предоставленного для этой задачи, и создания образа, который затем можно отправить в реестр образов и использовать в контейнерном приложении для сборки и запуска приложения.

В агенте Azure Pipelines, выполняющего задачу, устанавливается стабильная версия интерфейса командной строки пакета, и в зависимости от базовой ОС этого агента для установки будут использоваться различные средства:

  • В средствах выполнения Windows:
    • Набор команд PowerShell выполняется для выполнения следующих действий:
      • Создает pack папку во временной папке агента, если папка pack еще не существует.
      • Загружает интерфейс командной строки .zip pack в эту pack папку.
      • Распакует содержимое из этой .zip папки и помещает его в папку pack
      • Удаляет .zip
  • Для средств выполнения тестов, отличных от Windows:
    • curl будет использоваться для извлечения .tgz , содержащего исполняемый pack файл
    • tar будет использоваться для распакука .tgz и размещения исполняемого pack файла в /usr/local/bin

Реестр контейнеров Azure

Должен существовать Реестр контейнеров Azure, в который пользователь может отправлять образы контейнеров. Эта задача будет использовать Реестр контейнеров Azure для отправки созданного образа запускаемого приложения в и (или) развертывания приложения-контейнера из.

Имя Реестр контейнеров Azure требуется с помощью аргумента acrName .

Пользователь также может указать значения аргументов acrUsername и acrPassword , которые будут выполнять проверку подлинности вызовов экземпляра Реестр контейнеров Azure. Если он не указан, через Azure CLI будет создан маркер доступа, который будет проверять подлинность вызовов.

Среда контейнеров приложений Azure

Для повышения производительности задачи рекомендуется предварительно создать среду контейнерного приложения Azure . Если среда не была создана ранее или среда не найдена в группе ресурсов, которая используется для размещения созданного приложения-контейнера, среда будет создана в составе az containerapp up команды , что может занять дополнительное время.

Примеры

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

Минимальный — создание образа приложения для контейнерного приложения

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'

При этом будет создано приложение-контейнер с именем ado-task-app-<build-id>-<build-number> в новой группе ресурсов с именем <container-app-name>-rg. Приложение-контейнер будет основано на образе, который был создан из предоставленного appSourcePath и отправлен в предоставленный экземпляр ACR. Будет создан маркер доступа для проверки подлинности отправки в предоставленный экземпляр ACR.

Минимальный — использование ранее опубликованного образа для приложения-контейнера

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    imageToDeploy: mcr.microsoft.com/azuredocs/containerapps-helloworld:latest

При этом будет создано новое приложение-контейнер с именем ado-task-app-<build-id>-<build-number> в новой группе ресурсов с именем <container-app-name>-rg , где новый образ не создается, но существующий образ с именем mcr.microsoft.com/azuredocs/containerapps-helloworld:latest будет использоваться для приложения-контейнера.

Минимальный — использование файла конфигурации YAML с ранее опубликованным образом для контейнерного приложения

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    yamlConfigPath: simple-image-container-app.yaml

При этом будет создано новое приложение-контейнер с именем ado-task-app-<build-id>-<build-number> в новой группе ресурсов с именем <container-app-name>-rg , где новый образ не создается, но существующий образ с именем mcr.microsoft.com/azuredocs/containerapps-helloworld:latest будет использоваться для приложения-контейнера. Дополнительные свойства приложения-контейнера будут извлечены из simple-image-container-app.yaml файла и переопределяют все дополнительные значения, которые были бы предоставлены задаче в качестве аргументов , за исключением resourceGroup.

Файл simple-image-container-app.yaml имеет следующую структуру:

properties:
  managedEnvironmentId: /subscriptions/SUBSCRIPTION_ID/resourceGroup/RESOURCE_GROUP/providers/Microsoft.App/managedEnvironments/CONTAINER_APP_ENVIRONMENT
  configuration:
    ingress:
      external: true
      allowInsecure: false
      targetPort: 80
  template:
    containers:
      - image: mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
        name: mysampleimagecontainer

Значения для SUBSCRIPTION_ID, RESOURCE_GROUP и CONTAINER_APP_ENVIRONMENT должны быть обновлены так, чтобы они указывали на полный идентификатор ресурса существующей среды приложения-контейнера, которую будет использовать приложение-контейнер.

Использование учетных данных ACR для проверки подлинности

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    acrUsername: $(ACR_USERNAME_SECRET)
    acrPassword: $(ACR_PASSWORD_SECRET)

При этом будет создано приложение-контейнер с именем ado-task-app-<build-id>-<build-number> в новой группе ресурсов с именем <container-app-name>-rg. Приложение-контейнер будет основано на образе, который был создан из предоставленного appSourcePath и отправлен в предоставленный экземпляр ACR. Предоставленные учетные данные ACR будут использоваться для проверки подлинности вызовов экземпляра ACR.

Указано имя приложения-контейнера

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    containerAppName: 'my-test-container-app'

При этом будет создано приложение-контейнер с именем my-test-container-app в новой группе my-test-container-app-rgресурсов .

Предоставленная группа ресурсов

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    resourceGroup: 'my-test-rg'

При этом будет создано приложение-контейнер с именем ado-task-app-<build-id>-<build-number> в группе ресурсов с именем my-test-rg. my-test-rg Если группа ресурсов не существует, она будет создана в рамках этой задачи.

Указано имя приложения-контейнера и группа ресурсов

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    containerAppName: 'my-test-container-app'
    resourceGroup: 'my-test-rg'

При этом будет создано приложение-контейнер с именем my-test-container-app в группе ресурсов с именем my-test-rg. my-test-rg Если группа ресурсов не существует, она будет создана в рамках этой задачи.

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

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    containerAppEnvironment: 'my-test-container-app-env'

При этом будет создано приложение-контейнер с именем ado-task-app-<build-id>-<build-number> в новой группе ресурсов с именем <container-app-name>-rg с новой средой приложения-контейнера с именем my-test-container-app-env.

Предоставляется стек среды выполнения

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    runtimeStack: 'dotnetcore:7.0'

При этом будет создано приложение-контейнер с именем ado-task-app-<build-id>-<build-number> в новой группе ресурсов с именем <container-app-name>-rg , где образ запускаемого приложения использует стек среды выполнения .NET 7.

Предоставленный dockerfile

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    dockerfilePath: 'test.Dockerfile'

При этом будет создано приложение-контейнер с именем ado-task-app-<build-id>-<build-number> в новой группе ресурсов с именем <container-app-name>-rg , где был создан образ запускаемого приложения из test.Dockerfile файла, найденного в указанном каталоге исходного пути приложения.

Примечание. Для значений , указанных в dockerfilePath, префиксы файлов не должны быть включены (например, ./test.Dockerfile должны передаваться как только test.Dockerfile). Предоставленные appSourcePath аргументы и dockerfilePath будут сцеплены внутри задачи.

Предоставленный образ для сборки

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    imageToBuild: 'mytestacr.azurecr.io/app:latest'

При этом будет создано приложение-контейнер с именем ado-task-app-<build-id>-<build-number> в новой группе ресурсов с именем <container-app-name>-rg , где образ, созданный и отправленный в ACR, называется mytestacr.azurecr.io/app:latest.

Требования

Требование Описание
Типы конвейеров YAML, классическая сборка, классический выпуск
Выполняется в Агент, DeploymentGroup
Требования None
Capabilities Эта задача не удовлетворяет требованиям для последующих задач в задании.
Ограничения команд Любой
Устанавливаемые переменные Любой
Версия агента 2.144.0 или более поздней версии
Категория задач Развернуть

См. также раздел