AzureContainerApps@1 - Tarefa Azure Container Apps Deploy v1
Uma Tarefa de DevOps do Azure para criar e implantar Aplicativos de Contêiner do Azure.
Sintaxe
# 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.
Insumos
workingDirectory
-
Diretório de Trabalho
Alias de entrada: cwd
.
string
.
Diretório de trabalho atual onde o script é executado. Vazio é a raiz do repositório (build) ou artefatos (release), que é $(System.DefaultWorkingDirectory).
appSourcePath
-
Caminho de origem do aplicativo
string
.
Caminho absoluto no corredor do código do aplicativo de origem a ser construído. Se não for fornecido, o argumento 'imageToDeploy' deve ser fornecido para garantir que o Container App tenha uma imagem para referência.
Ao enviar uma nova imagem para o ACR, as entradas de tarefas acrName
e appSourcePath
são necessárias.
azureSubscription
-
de conexão do Azure Resource Manager
Alias de entrada: connectedServiceNameARM
.
string
. Necessário.
Especifique uma conexão de serviço do Azure Resource Manager para a implantação. Essa conexão de serviço deve estar vinculada à Assinatura do Azure do usuário, na qual o Aplicativo de Contêiner será criado/atualizado. Esse de conexão de serviço deve ter permissões adequadas para fazer essas alterações na assinatura, por exemplo, função de Colaborador.
acrName
-
nome do Registro de Contêiner do Azure
string
.
O nome do Registro de Contêiner do Azure para o qual a imagem do aplicativo executável será enviada por push.
Ao enviar uma nova imagem para o ACR, as entradas de tarefas acrName
e appSourcePath
são necessárias.
acrUsername
-
nome de usuário do Registro de Contêiner do Azure
string
.
O nome de usuário usado para autenticar solicitações por push no Registro do Azure Contrainer fornecido. Se não for fornecido, um token de acesso será gerado via 'az acr login' e fornecido ao 'docker login' para autenticar as solicitações.
acrPassword
-
senha do Registro de Contêiner do Azure
string
.
A senha usada para autenticar solicitações por push no Registro do Azure Contrainer fornecido. Se não for fornecido, um token de acesso será gerado via 'az acr login' e fornecido ao 'docker login' para autenticar as solicitações.
dockerfilePath
-
caminho do Dockerfile
string
.
Caminho relativo (_without prefixos de arquivo (consulte os seguintes Exemplos) para o Dockerfile na fonte de aplicativo fornecida que deve ser usado para criar a imagem que é então enviada por push para ACR e implantada no Aplicativo de Contêiner. Se não for fornecida, esta tarefa verificará se há um arquivo chamado 'Dockerfile' na raiz da fonte do aplicativo fornecido e usá-lo para construir a imagem. Caso contrário, o Oryx++ Builder será usado para criar a imagem.
imageToBuild
-
imagem do Docker para criar
string
.
O nome personalizado da imagem a ser criada, enviada por push para ACR e implantada no Aplicativo de Contêiner por essa tarefa. Nota: este nome de imagem deve incluir o servidor ACR; por exemplo, <acr-name>.azurecr.io/<repo>:<tag>
. Se esse argumento não for fornecido, um nome de imagem padrão será construído na forma de <acr-name>.azurecr.io/ado-task/container-app:<build-id>.<build-number>
.
imageToDeploy
-
imagem do Docker para implantar
string
.
O nome da imagem que já foi enviada por push para o ACR e será implantada no Aplicativo de Contêiner por essa tarefa. Nota: o nome da imagem deve incluir o servidor ACR; por exemplo, <acr-name>.azurecr.io/<repo>:<tag>
. Se esse argumento não for fornecido, o valor fornecido (ou determinado) para o argumento 'imageToBuild' será usado. Se essa imagem for encontrada em uma instância ACR que requer autenticação para pull, o argumento acrName
ou os argumentos acrUsername
e acrPassword
podem ser fornecidos para autenticar solicitações para a instância ACR.
containerAppName
-
Nome do Aplicativo de Contêiner do Azure
string
.
O nome do Aplicativo de Contêiner do Azure que será criado ou atualizado. Se não for fornecido, este valor será na forma de ado-task-app-<build-id>-<build-number>
.
resourceGroup
-
nome do grupo de recursos do Azure
string
.
O grupo de recursos existente no qual o Aplicativo de Contêiner do Azure será criado (ou no qual existe atualmente). Se não for fornecido, este valor será na forma de <container-app-name>-rg
.
containerAppEnvironment
-
ambiente do Aplicativo de Contêiner do Azure
string
.
O nome do ambiente do Aplicativo de Contêiner do Azure a ser usado com o aplicativo. Se não for fornecido, um ambiente existente no grupo de recursos do Aplicativo de Contêiner será usado, caso contrário, um ambiente será criado no formato de <container-app-name>-env
.
runtimeStack
-
pilha de tempo de execução do aplicativo
string
.
A pilha de versão da plataforma usada na imagem final do aplicativo executável que é implantada no Aplicativo de Contêiner. O valor deve ser fornecido na formação <platform>:<version>
. Se não for fornecido, este valor é determinado pela Oryx com base no conteúdo da aplicação fornecida. Consulte este documento obter mais informações sobre pilhas de tempo de execução suportadas para Oryx.
targetPort
-
da porta de destino do aplicativo
string
.
A porta de destino na qual o Aplicativo de Contêiner escutará. Se não for fornecido, esse valor será "80" para aplicativos Python e "8080" para todas as outras plataformas suportadas.
location
-
localização do aplicativo de contêiner
string
.
O local no qual o Aplicativo de Contêiner (e outros recursos criados) será implantado.
environmentVariables
-
Variáveis de ambiente
string
.
Uma lista de variáveis(ões) de ambiente para o contêiner. Valores separados por espaço no formato 'key=value'. Cadeia de caracteres vazia para limpar valores existentes. Valor do prefixo com 'secretref:' para fazer referência a um segredo.
ingress
-
Configuração de ingresso
string
.
Opções possíveis: externo, interno, desativado. Se definido como external
(valor padrão se não for fornecido ao criar um Aplicativo de Contêiner), o Aplicativo de Contêiner ficará visível da Internet ou de uma VNET, dependendo do ponto de extremidade do ambiente do aplicativo configurado. Se definido como internal
, o Aplicativo de Contêiner ficará visível somente no ambiente do aplicativo. Se definido como disabled
, a entrada será desativada para este Aplicativo de Contêiner e não terá um ponto de extremidade HTTP ou TCP.
yamlConfigPath
-
caminho do arquivo de configuração YAML
string
.
Caminho completo (no agente do Azure Pipelines em execução) para o arquivo YAML detalhando a configuração do Aplicativo de Contêiner.
A propriedade resourceGroup
no arquivo de configuração YAML não será usada; O valor para isso vem do argumento resourceGroup
fornecido à tarefa ou do nome do grupo de recursos padrão gerado pela tarefa. Todas as outras propriedades fornecidas no arquivo de configuração do YAML substituirão os valores fornecidos como argumentos para esta tarefa; por exemplo, se o argumento containerAppName
for fornecido para a tarefa e a propriedade name
estiver definida no arquivo de configuração YAML, a propriedade name
no arquivo YAML será usada ao criar ou atualizar o Aplicativo de Contêiner.
Os argumentos de origem de imagem e aplicativo (por exemplo,, appSourcePath
, imageToDeploy
) ainda serão usados para primeiro criar e/ou enviar por push uma imagem que é usada pelo aplicativo de contêiner; nesse caso, o arquivo de configuração YAML fornecido precisará fazer referência à imagem especificada por imageToDeploy
(ou imageToBuild
, dependendo do seu cenário).
Ao criar um novo Aplicativo de Contêiner, todas as propriedades listadas no arquivo de configuração do YAML (exceto resourceGroup
como mencionado acima) serão definidas quando o Aplicativo de Contêiner for criado. Ao atualizar um Aplicativo de Contêiner existente, somente as propriedades listadas no arquivo serão atualizadas no Aplicativo de Contêiner.
Atualmente, o arquivo YAML não suporta a configuração de autenticação de identidade gerenciada para o registro de contêiner usado; para obter mais informações sobre esse problema, consulte este problema do GitHub.
Nos casos em que o argumento yamlConfigPath
é fornecido, o arquivo YAML será passado para o comando az containerapp
correspondente, create
ou
update
dependendo do seu cenário. Para obter mais informações sobre o comportamento pretendido quando o arquivo de configuração YAML é fornecido, consulte os documentos vinculados para os comandos correspondentes.
Para obter mais informações sobre a estrutura do arquivo de configuração YAML, visite este site.
disableTelemetry
-
Desativar de telemetria
boolean
.
Se definido como 'true', nenhuma telemetria será coletada por esta Tarefa de DevOps do Azure. Se definido como 'false' ou se esse argumento não for fornecido, a telemetria será enviada à Microsoft sobre o cenário de compilação e implantação do Aplicativo de Contêiner direcionado por esta Tarefa de DevOps do Azure.
Opções de controlo de tarefas
Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de e propriedades de tarefas comuns.
Variáveis de saída
Nenhuma.
Comentários
Esta Tarefa de Pipelines do Azure permite que os usuários implantem facilmente sua fonte de aplicativo em um de Aplicativo de Contêiner do Azure em seu fluxo de trabalho do Azure Pipelines, fornecendo uma imagem criada anteriormente, um Dockerfile a partir do qual uma imagem pode ser criada ou usando um construtor para criar uma imagem de aplicativo executável para o usuário.
A tarefa tem os dois padrões de uso a seguir.
-
Empurrar uma imagem para o ACR - ao enviar uma nova imagem para o ACR, as entradas de tarefas
acrName
eappSourcePath
são necessárias. -
Implantando uma imagem enviada anteriormente por push - ao implantar uma imagem enviada anteriormente, a entrada de tarefa
imageToDeploy
é necessária. Se essa imagem for encontrada em uma instância ACR que requer autenticação para pull, o argumentoacrName
ou os argumentosacrUsername
eacrPassword
podem ser fornecidos para autenticar solicitações para a instância ACR.
Observação
Embora nenhuma entrada de tarefa seja oficialmente marcada como "necessária" nos metadados dessa tarefa, algumas entradas precisarão ser fornecidas para que essa tarefa seja executada com êxito usando um dos dois principais padrões de uso.
Se nenhum Dockerfile for encontrado ou fornecido na fonte do aplicativo fornecida, as seguintes etapas serão executadas por esta tarefa:
- Usa o Oryx++ Builder para criar a fonte do aplicativo usando Oryx para produzir uma imagem de aplicativo executável
- Envia essa imagem de aplicativo executável para o Registro de Contêiner do Azure fornecido
- Cria ou atualiza um aplicativo de contêiner com base nesta imagem
Se um Dockerfile for encontrado ou descoberto na fonte do aplicativo, o construtor não será usado e a imagem será criada com uma chamada para docker build
e o Aplicativo de Contêiner será criado ou atualizado com base nessa imagem.
Se uma imagem criada anteriormente já tiver sido enviada por push para a instância ACR e for fornecida para essa tarefa, nenhuma fonte de aplicativo será necessária e a imagem será usada ao criar ou atualizar o Aplicativo de Contêiner.
Executando esta tarefa em agentes hospedados pela Microsoft
Se você estiver executando essa tarefa em um agente hospedado pela Microsoft, você pode achar que essa tarefa não capaz de ser executada com êxito com os seguintes sistemas operacionais:
- macOS
- Os macOS runners fornecidos pela Microsoft não vêm instalados com o Docker (mais informações aqui); como resultado, essa tarefa não é capaz de executar nenhum comando
docker
, como enviar as imagens de aplicativo executáveis construídas para o ACR.
- Os macOS runners fornecidos pela Microsoft não vêm instalados com o Docker (mais informações aqui); como resultado, essa tarefa não é capaz de executar nenhum comando
- Mac OS
- Os executores do Windows fornecidos pela Microsoft vêm com o Docker instalado, mas, por padrão, as imagens baseadas em Linux não podem ser puxadas para baixo; como resultado, essa tarefa não é capaz de puxar para baixo o construtor Oryx para criar imagens de aplicativo executáveis a partir da fonte de aplicativo fornecida.
Consulte a seção de pré-requisitos do Docker abaixo para obter mais informações.
Aviso de Recolha de Dados/Telemetria
Por padrão, essa Tarefa de DevOps do Azure coleta as seguintes partes de dados para a Microsoft:
- O cenário de compilação e implantação do Aplicativo de Contêiner direcionado pelo usuário
- exemplo,, usou o Oryx++ Builder, usou um Dockerfile fornecido/encontrado ou forneceu uma imagem construída anteriormente
- Nota: o nome da imagem não está recolhido
- O tempo de processamento da tarefa, em milissegundos
- O resultado da tarefa
- ou seja,, bem-sucedido ou fracassado
- Se o Oryx++ Builder for usado, eventos e métricas relacionados à criação do aplicativo fornecido usando o Oryx
Se você quiser desativar a coleta de dados, defina o argumento disableTelemetry
como true
.
Pré-requisitos
Antes de executar essa tarefa, os recursos do Azure e uma conexão de serviço do Azure DevOps são necessários ou opcionais, dependendo dos argumentos fornecidos para essa tarefa.
Conexão do Serviço Azure DevOps
Para implantar no Azure, uma assinatura do Azure deve ser vinculada ao Team Foundation Server ou ao Azure Pipelines usando a guia Serviços na seção de configurações. Adicione a assinatura do Azure para usar na definição de Build ou Release Management abrindo a tela Administração de Conta (ícone de engrenagem no canto superior direito da tela) e clique na guia Serviços.
Crie o ponto de extremidade do serviço ARM
Azure CLI
Esta tarefa requer que a CLI do Azure esteja instalada no agente do Azure Pipelines para executar uma variedade de comandos durante a execução da tarefa. Para obter mais informações sobre como instalar a CLI do Azure no agente, consulte este documento. Se um agente já estiver em execução na máquina na qual a CLI do Azure está instalada, certifique-se de reiniciar o agente para que todas as variáveis de ambiente relevantes sejam atualizadas.
Docker
Esta tarefa requer que o Docker esteja instalado no agente do Azure Pipelines para enviar imagens por push para o Registro de Contêiner do Azure fornecido. Para obter mais informações sobre como instalar o Docker no agente, consulte este documento.
Além disso, os usuários que executam essa tarefa com um agente do Windows podem encontrar um problema por não serem capazes de extrair imagens baseadas em Linux; Para resolver isso, visite este site ou localize o arquivo DockerCli.exe
em seu agente (normalmente na pasta Program Files\Docker\Docker
) e execute
& `.\DockerCli.exe` -SwitchDaemon
Se o Docker não estiver instalado no agente que executa essa tarefa, os seguintes cenários ainda estarão habilitados:
- Fornecer uma imagem criada anteriormente para o
previamente criado para o argumento que o Aplicativo de Contêiner implanta com
Se o Docker estiver no agente, mas não puder trabalhar com imagens baseadas em Linux, os seguintes cenários ainda estarão habilitados:
- Fornecer uma imagem criada anteriormente para o
previamente criado para o argumento que o Aplicativo de Contêiner implanta com - Fornecendo um
Dockerfile
como parte da origem do aplicativo que será criado e implantado com o aplicativo de contêiner-
Nota: o
Dockerfile
não pode ter camadas de imagem baseadas em Linux
-
Nota: o
pacote CLI
O CLI do pacote
Uma versão estável da CLI do pacote é instalada no agente do Azure Pipelines que executa a tarefa e, dependendo do sistema operacional base desse agente, diferentes ferramentas serão aproveitadas para ajudar na instalação:
- Em corredores do Windows:
- Um conjunto de comandos do PowerShell é executado para fazer o seguinte:
- Cria uma pasta
pack
na pasta temporária do agente, se a pastapack
ainda não existir - Baixa o pacote CLI
.zip
para esta pastapack
- Descompacta o conteúdo desse
.zip
e os coloca na pastapack
- Exclui o
.zip
- Cria uma pasta
- Um conjunto de comandos do PowerShell é executado para fazer o seguinte:
- Em corredores que não são do Windows:
-
curl
será usado para puxar para baixo o.tgz
que contém o executávelpack
-
tar
será usado para descompactar o.tgz
e colocar o executávelpack
em/usr/local/bin
-
Azure Container Registry
Deve existir um Registro de Contêiner do Azure para o qual o usuário possa enviar imagens de contêiner por push. Essa tarefa aproveitará o Registro de Contêiner do Azure para enviar por push uma imagem de aplicativo executável criada para e/ou implantar um Aplicativo de Contêiner.
O nome do Registro de Contêiner do Azure é necessário por meio do argumento acrName
.
O usuário também pode fornecer valores para os argumentos acrUsername
e acrPassword
que autenticarão chamadas para a instância do Registro de Contêiner do Azure; se não for fornecido, um token de acesso será gerado por meio da CLI do Azure que autenticará as chamadas.
Ambiente do Aplicativo de Contêiner do Azure
Recomenda-se que um de ambiente do Aplicativo de Contêiner do Azure do az containerapp up
, o que pode levar tempo adicional.
Exemplos
Os exemplos a seguir descrevem como usar o AzureContainerApps
em diferentes cenários.
Minimal - Criar imagem de aplicativo para Container App
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
Isso criará um novo Aplicativo de Contêiner chamado ado-task-app-<build-id>-<build-number>
em um novo grupo de recursos chamado <container-app-name>-rg
. O Container App será baseado em uma imagem que foi criada a partir do appSourcePath
fornecido e enviada por push para a instância ACR fornecida. Um token de acesso será gerado para autenticar o push para a instância ACR fornecida.
Mínimo - Use a imagem publicada anteriormente para o Container App
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
imageToDeploy: mcr.microsoft.com/<existing-image>:latest
Isso criará um novo Aplicativo de Contêiner chamado ado-task-app-<build-id>-<build-number>
em um novo grupo de recursos chamado <container-app-name>-rg
onde nenhuma nova imagem é criada, mas uma imagem existente chamada mcr.microsoft.com/<existing-image>:latest
será usada para o Aplicativo de Contêiner.
Mínimo - Use o arquivo de configuração YAML com imagem publicada anteriormente para o Container App
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
yamlConfigPath: simple-image-container-app.yaml
Isso criará um novo Aplicativo de Contêiner chamado ado-task-app-<build-id>-<build-number>
em um novo grupo de recursos chamado <container-app-name>-rg
onde nenhuma nova imagem é criada, mas uma imagem existente chamada mcr.microsoft.com/<existing-image>:latest
será usada para o Aplicativo de Contêiner. Propriedades adicionais sobre o Aplicativo de Contêiner serão extraídas do arquivo de simple-image-container-app.yaml
e substituirão quaisquer valores adicionais que teriam sido fornecidos à tarefa como argumentos exclusão resourceGroup
.
O arquivo simple-image-container-app.yaml
tem a seguinte estrutura:
properties:
managedEnvironmentId: /subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/managedEnvironments/CONTAINER_APP_ENVIRONMENT
configuration:
ingress:
external: true
allowInsecure: false
targetPort: 80
template:
containers:
- image: mcr.microsoft.com/<existing-image>:latest
name: mysampleimagecontainer
Os valores para SUBSCRIPTION_ID
, RESOURCE_GROUP
e CONTAINER_APP_ENVIRONMENT
devem ser atualizados para apontar para a ID de recurso completa do ambiente existente do Container App que o Container App usará.
Usando credenciais ACR para autenticar
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)
Isso criará um novo Aplicativo de Contêiner chamado ado-task-app-<build-id>-<build-number>
em um novo grupo de recursos chamado <container-app-name>-rg
. O Container App será baseado em uma imagem que foi criada a partir do appSourcePath
fornecido e enviada por push para a instância ACR fornecida. As credenciais ACR fornecidas serão usadas para autenticar chamadas para a instância ACR.
Nome do aplicativo de contêiner fornecido
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'
Isso criará um novo Aplicativo de Contêiner chamado my-test-container-app
em um novo nome de grupo de recursos my-test-container-app-rg
.
Grupo de recursos fornecido
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'
Isso criará um novo Aplicativo de Contêiner chamado ado-task-app-<build-id>-<build-number>
em um grupo de recursos chamado my-test-rg
. Se o grupo de recursos my-test-rg
não existir, ele será criado como parte dessa tarefa.
Nome do aplicativo de contêiner e grupo de recursos fornecidos
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'
Isso criará um novo Aplicativo de Contêiner chamado my-test-container-app
em um grupo de recursos chamado my-test-rg
. Se o grupo de recursos my-test-rg
não existir, ele será criado como parte dessa tarefa.
Ambiente de aplicativo de contêiner fornecido
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'
Isso criará um novo Aplicativo de Contêiner chamado ado-task-app-<build-id>-<build-number>
em um novo grupo de recursos chamado <container-app-name>-rg
com um novo ambiente de Aplicativo de Contêiner chamado my-test-container-app-env
.
Pilha de tempo de execução fornecida
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'
Isso criará um novo Aplicativo de Contêiner chamado ado-task-app-<build-id>-<build-number>
em um novo grupo de recursos chamado <container-app-name>-rg
onde a imagem do aplicativo executável está usando a pilha de tempo de execução do .NET 7.
Dockerfile fornecido
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
dockerfilePath: 'test.Dockerfile'
Isso criará um novo Aplicativo de Contêiner chamado ado-task-app-<build-id>-<build-number>
em um novo grupo de recursos chamado <container-app-name>-rg
onde a imagem do aplicativo executável foi criada a partir do arquivo de test.Dockerfile
encontrado no diretório de caminho de origem do aplicativo fornecido.
Nota: para valores fornecidos a dockerfilePath
, nenhum prefixo de arquivo deve ser incluído (por exemplo,, ./test.Dockerfile
deve ser passado como apenas test.Dockerfile
). Os argumentos appSourcePath
e dockerfilePath
fornecidos serão concatenados dentro da tarefa.
Imagem a construir fornecida
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'
Isso criará um novo Aplicativo de Contêiner chamado ado-task-app-<build-id>-<build-number>
em um novo grupo de recursos chamado <container-app-name>-rg
onde a imagem criada e enviada por push para ACR é nomeada mytestacr.azurecr.io/app:latest
.
Requerimentos
Exigência | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Agente, DeploymentGroup |
Exigências | Nenhum |
Capacidades | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.144.0 ou superior |
Categoria de tarefa | Implantar |