Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O comando az containerapp up (ou up) é a maneira mais rápida de implantar um aplicativo no Azure Container Apps a partir de uma imagem existente, código-fonte local ou um repositório GitHub. Ao usar esse único comando, você pode colocar seu aplicativo de contêiner em execução em minutos.
O comando pode criar e enviar por push uma imagem de contêiner para o Registro de Contêiner do Azure quando você fornece um código-fonte local ou um repositório GitHub. Quando você trabalha em um repositório GitHub, o comando cria um fluxo de trabalho do GitHub Actions que compila e envia por push automaticamente uma nova imagem de contêiner ao confirmar alterações no repositório GitHub.
Este artigo mostra como usar o comando para implantar um aplicativo de contêiner de uma imagem existente, código-fonte local e um repositório GitHub.
Pré-requisitos
| Requisito | Instruções |
|---|---|
| Uma conta do Azure | Se você não tiver, crie uma conta gratuita. Sua assinatura do Azure precisa ter a função Colaborador ou Proprietário . Para obter informações detalhadas, consulte Atribuir funções do Azure usando o portal do Azure. |
| A CLI do Azure | Instale a CLI do Azure. |
| Uma conta do GitHub | Se você quiser usar uma imagem em um repositório GitHub, inscreva-se em uma conta gratuita do GitHub. |
| Código-fonte local | Se você quiser criar uma imagem do código-fonte local, coloque seu código em um diretório local. |
| Uma imagem existente | Se você quiser usar uma imagem existente, anote o servidor de registro, o nome da imagem e o tag. Se você usar um registro privado, observe também suas credenciais. |
Usar recursos existentes
O up comando pode criar recursos ou pode usar os existentes, incluindo:
- Um grupo de recursos.
- Registro de Contêiner.
- Um ambiente de Aplicativos de Contêiner e um workspace do Azure Log Analytics.
- Seu aplicativo de contêiner.
Se você precisar personalizar o ambiente de Aplicativos de Contêiner, primeiro use o az containerapp env create comando para criar e personalizar seu ambiente. Ao executar o up comando, use a opção --environment para especificar o ambiente personalizado.
Se você não especificar um ambiente existente, o up comando procurará um em seu grupo de recursos. Se o comando encontrar um ambiente, ele usará esse ambiente. Se o comando não encontrar um ambiente, ele criará um que inclua um espaço de trabalho do Log Analytics.
Para obter mais informações sobre o az containerapp up comando e suas opções, consulte az containerapp up.
Configurar o ambiente da CLI do Azure
Use a CLI do Azure para entrar no Azure.
az loginInstale a extensão Aplicativos de Contêiner para a CLI do Azure.
az extension add --name containerapp --upgradeRegistre o
Microsoft.Appnamespace.az provider register --namespace Microsoft.AppRegistre o
Microsoft.OperationalInsightsprovedor para a área de trabalho do Log Analytics.az provider register --namespace Microsoft.OperationalInsights
Implantar de uma imagem existente
Você pode implantar um aplicativo de contêiner que usa uma imagem existente em um registro de contêiner público ou privado. Se você implantar de um registro privado, precisará fornecer suas credenciais usando as opções --registry-server, --registry-username e --registry-password.
Você pode usar o código de exemplo a seguir para implantar um aplicativo de contêiner de uma imagem existente. Antes de executar o comando, substitua os espaços reservados, que estão entre colchetes, por seus valores.
az containerapp up \
--name <CONTAINER_APP_NAME> \
--image <REGISTRY_SERVER>/<IMAGE_NAME>:<TAG> \
--ingress external \
--target-port <PORT_NUMBER>
Este comando executa as seguintes ações:
- Cria um grupos de recursos.
- Cria um ambiente e o workspace do Log Analytics.
- Cria e implanta um aplicativo de contêiner que efetua pull da imagem de um registro público.
- Define o valor do aplicativo contêiner de
ingressparaexternalcom a porta de destino definida para o valor especificado.
Você também pode usar o up comando para reimplantar um aplicativo de contêiner. Se você quiser reimplantar com uma nova imagem, use a opção --image para especificar uma nova imagem. Verifique se as opções --resource-group e --environment estão definidas para os valores da implantação original.
az containerapp up \
--name <CONTAINER_APP_NAME> \
--image <REGISTRY_SERVER>/<IMAGE_NAME>:<TAG> \
--resource-group <RESOURCE_GROUP_NAME> \
--environment <ENVIRONMENT_NAME> \
--ingress external \
--target-port <PORT_NUMBER>
Implantar do código-fonte local
Quando você usa o comando up para implantar de uma origem local, ele compila a imagem de contêiner, envia-a por push para um registro e implanta o aplicativo de contêiner. Se você não especificar um registro, o comando criará um no Registro de Contêiner.
O comando pode criar a imagem com ou sem um Dockerfile. Em builds que não usam um Dockerfile, há suporte para os seguintes idiomas:
- .NET
- Node.js
- PHP
- Python
Você pode usar o seguinte código de exemplo para implantar um aplicativo de contêiner do código-fonte local:
az containerapp up \
--name <CONTAINER_APP_NAME> \
--source <SOURCE_DIRECTORY>\
--ingress external
Este comando executa as seguintes ações:
- Cria um grupos de recursos.
- Cria um ambiente e o workspace do Log Analytics.
- Cria um registro no Registro de Contêiner.
- Cria a imagem de contêiner (usando o Dockerfile se ela existir).
- Efetua push da imagem para o registro.
- Cria e implanta o aplicativo de contêiner.
Quando o Dockerfile inclui a EXPOSE instrução, o up comando configura a entrada e a porta de destino do aplicativo de contêiner usando as informações no Dockerfile. Se configurar a entrada por meio do Dockerfile ou se seu aplicativo não exigir entrada, você poderá omitir a opção --ingress.
A saída do comando inclui a URL do aplicativo de contêiner.
Se o comando relatar que está aguardando o agente do Cloud Build, mas depois parar de responder, um erro transitório do GitHub poderá ser a origem do problema. Para resolver a situação, execute o comando novamente.
Se houver uma falha, você poderá executar o comando novamente com a opção --debug para obter mais informações. Se o build falhar sem um Dockerfile, você poderá tentar adicionar um Dockerfile e executar o comando novamente.
Para usar o comando az containerapp up para reimplantar seu aplicativo de contêiner com uma imagem atualizada, inclua as opções --resource-group e --environment. Para reimplantar um aplicativo de contêiner do código-fonte local, execute as seguintes etapas:
Faça alterações no código-fonte.
Execute o comando a seguir:
az containerapp up \ --name <CONTAINER_APP_NAME> \ --source <SOURCE_DIRECTORY> \ --resource-group <RESOURCE_GROUP_NAME> \ --environment <ENVIRONMENT_NAME>
Implantar de um repositório GitHub
Quando você usa o comando az containerapp up para implantar de um repositório GitHub, ele gera um fluxo de trabalho do GitHub Actions que compila a imagem de contêiner, envia-a por push para um registro e implanta o aplicativo de contêiner. Se você não especificar um registro, o comando criará um no Registro de Contêiner.
Um Dockerfile é necessário para compilar a imagem. Quando o Dockerfile inclui a EXPOSE instrução, o comando configura a entrada e a porta de destino do aplicativo de contêiner usando as informações no Dockerfile.
Você pode usar o seguinte código de exemplo para implantar um aplicativo de contêiner de um repositório GitHub:
az containerapp up \
--name <CONTAINER_APP_NAME> \
--repo <GITHUB_REPOSITORY_URL> \
--ingress external
Este comando executa as seguintes ações:
- Cria um grupos de recursos.
- Cria um ambiente e o workspace do Log Analytics.
- Cria um registro no Registro de Contêiner.
- Cria a imagem de contêiner usando o Dockerfile.
- Efetua push da imagem para o registro.
- Cria e implanta o aplicativo de contêiner.
- Cria um fluxo de trabalho do GitHub Actions para criar a imagem de contêiner e implantar o aplicativo de contêiner quando alterações futuras forem enviadas por push para o repositório GitHub.
Se o comando falhar porque uma entidade de serviço não pode ser criada, você pode criar manualmente uma entidade de serviço no Azure. Em seguida, você pode passar informações sobre ele para o comando:
az containerapp up \
--name <CONTAINER_APP_NAME> \
--repo <GITHUB_REPOSITORY_URL> \
--service-principal-client-id "$SERVICE_PRINCIPAL_CLIENT_ID" \
--service-principal-client-secret "$SERVICE_PRINCIPAL_CLIENT_SECRET" \
--service-principal-tenant-id "$AZURE_TENANT_ID"
--ingress external
Se configurar a entrada por meio do Dockerfile ou se seu aplicativo não exigir entrada, você poderá omitir a opção --ingress.
O up comando cria um fluxo de trabalho do GitHub Actions. Como resultado, executar novamente o comando tem o efeito indesejado de criar vários fluxos de trabalho. Se você quiser implantar alterações na imagem do aplicativo, envie alterações por push para o repositório GitHub em vez de executar novamente o comando. O fluxo de trabalho do GitHub detecta automaticamente as alterações em seu repositório e, em seguida, cria e implanta seu aplicativo. Para alterar o fluxo de trabalho, edite o arquivo de fluxo de trabalho no GitHub.
Definir configurações do aplicativo de contêiner
O az containerapp up comando fornece uma maneira simplificada de criar e implantar aplicativos de contêiner que usam principalmente as configurações padrão. No entanto, depois de usar o up comando, você precisará executar outros comandos da CLI do Azure, como os seguintes, caso deseje definir configurações mais avançadas:
- Dapr (Distributed Application Runtime):
az containerapp dapr enable - Segredos:
az containerapp secret set - Protocolos de transporte:
az containerapp ingress update
Se você quiser personalizar outras configurações para seu aplicativo de contêiner, como configurações de recurso ou dimensionamento, primeiro use o up comando para implantar seu aplicativo de contêiner. Em seguida, use o az containerapp update comando para alterar essas configurações. O az containerapp up comando não é uma abreviação para o az containerapp update comando.