Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O serviço Aplicativos de Contêiner do Azure permite executar microsserviços e aplicativos em contêineres em uma plataforma sem servidor. Com os Container Apps, você aproveita os benefícios de executar contêineres enquanto deixa para trás as preocupações da configuração manual da infraestrutura de nuvem e dos orquestradores de contêineres complexos.
Este artigo demonstra como implantar um contêiner existente nos Aplicativos de Contêiner do Azure.
Nota
A autorização de registo privado é suportada através do nome de utilizador e palavra-passe do registo.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa.
- Se não tiver uma, pode criar uma gratuitamente.
- Instale a CLI do Azure.
- Acesso a um registo de contentores público ou privado, como o Azure Container Registry.
Configurar
Para entrar no Azure a partir da CLI, execute o seguinte comando e siga os prompts para concluir o processo de autenticação.
az login
Para garantir que você esteja executando a versão mais recente da CLI, execute o comando upgrade.
az upgrade
Em seguida, instale ou atualize a extensão Aplicativos de Contêiner do Azure para a CLI.
Se receber erros sobre parâmetros em falta ao executar az containerapp comandos na Azure CLI ou cmdlets no módulo Az.App no PowerShell, certifique-se de ter a versão mais recente da extensão Azure Container Apps instalada.
az extension add --name containerapp --upgrade
Nota
A partir de maio de 2024, as extensões da CLI do Azure não habilitam mais recursos de visualização por padrão. Para aceder às funcionalidades de pré-visualização do Container Apps, instale a extensão Container Apps com --allow-preview true.
az extension add --name containerapp --upgrade --allow-preview true
Agora que a extensão ou módulo atual está instalado, registre os Microsoft.App namespaces e Microsoft.OperationalInsights .
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
Definir variáveis de ambiente
Defina as seguintes variáveis de ambiente. Substitua o <PLACEHOLDERS> pelos seus valores:
RESOURCE_GROUP="<RESOURCE_GROUP>"
LOCATION="<LOCATION>"
CONTAINERAPPS_ENVIRONMENT="<CONTAINERAPPS_ENVIRONMENT>"
Criar um grupo de recursos do Azure
Crie um grupo de recursos para organizar os serviços relacionados à implantação do seu aplicativo de contêiner.
az group create \
--name $RESOURCE_GROUP \
--location "$LOCATION"
Criar um ambiente
Um ambiente em Aplicativos de Contêiner do Azure cria um limite seguro em torno de um grupo de aplicativos de contêiner. Os aplicativos de contêiner implantados no mesmo ambiente são implantados na mesma rede virtual e gravam logs no mesmo espaço de trabalho do Log Analytics.
Para criar o ambiente, execute o seguinte comando:
az containerapp env create \
--name $CONTAINERAPPS_ENVIRONMENT \
--resource-group $RESOURCE_GROUP \
--location "$LOCATION"
Criar um aplicativo de contêiner
Agora que você tem um ambiente criado, você pode implantar seu primeiro aplicativo de contêiner.
Defina as variáveis de ambiente.
Substitua o
<PLACEHOLDERS>pelos seus valores. Seu nome principal de usuário normalmente estará no formato de um endereço de e-mail (por exemplo,username@domain.com).CONTAINER_APP_NAME=my-container-app KEY_VAULT_NAME=my-key-vault USER_PRINCIPAL_NAME=<USER_PRINCIPAL_NAME> SECRET_NAME=my-secret-name CONTAINER_IMAGE_NAME=<CONTAINER_IMAGE_NAME> REGISTRY_SERVER=<REGISTRY_SERVER> REGISTRY_USERNAME=<REGISTRY_USERNAME>Crie o cofre de chaves.
Armazenar sua senha de registro de contêiner usando um serviço como o Azure Key Vault mantém os valores seguros em todos os momentos. As etapas nesta seção mostram como criar um cofre de chaves, armazenar sua senha de registro de contêiner o Cofre de Chaves e, em seguida, recuperar a senha para uso em seu código.
az keyvault create --name $KEY_VAULT_NAME --resource-group $RESOURCE_GROUPConceda à sua conta de utilizador permissões para gerir segredos no cofre de chaves.
KEY_VAULT_ID=$(az keyvault show --name $KEY_VAULT_NAME --query id --output tsv) az role assignment create --role "Key Vault Secrets Officer" --assignee "$USER_PRINCIPAL_NAME" --scope "$KEY_VAULT_ID"Armazene sua senha de registro de contêiner no cofre de chaves.
Substitua
<REGISTRY_PASSWORD>pelo seu valor.az keyvault secret set --vault-name $KEY_VAULT_NAME --name $SECRET_NAME --value "<REGISTRY_PASSWORD>"Recupere sua senha de registro de contêiner do cofre de chaves.
REGISTRY_PASSWORD=$(az keyvault secret show --name $SECRET_NAME --vault-name $KEY_VAULT_NAME --query value --output tsv)Implante uma imagem de contêiner nos Aplicativos de Contêiner do Azure.
az containerapp create \ --name $CONTAINER_APP_NAME \ --location $LOCATION \ --resource-group $RESOURCE_GROUP \ --image $CONTAINER_IMAGE_NAME \ --environment $CONTAINERAPPS_ENVIRONMENT \ --registry-server $REGISTRY_SERVER \ --registry-username $REGISTRY_USERNAME \ --registry-password $REGISTRY_PASSWORDSe tiver habilitado o ingresso no seu aplicativo de contêiner, pode adicionar
--query properties.configuration.ingress.fqdnao comandocreatepara retornar a URL pública do aplicativo.
Defina as variáveis de ambiente.
CONTAINER_APP_NAME=my-container-app CONTAINER_IMAGE_NAME=mcr.microsoft.com/k8se/quickstart:latestImplante uma imagem de contêiner nos Aplicativos de Contêiner do Azure.
az containerapp create \ --image $CONTAINER_IMAGE_NAME \ --name $CONTAINER_APP_NAME \ --resource-group $RESOURCE_GROUP \ --environment $CONTAINERAPPS_ENVIRONMENTSe tiver habilitado o ingresso no seu aplicativo de contêiner, pode adicionar
--query properties.configuration.ingress.fqdnao comandocreatepara retornar a URL pública do aplicativo.
Verificar a implementação
Para verificar uma implantação bem-sucedida, você pode consultar o espaço de trabalho do Log Analytics. Talvez seja necessário aguardar alguns minutos após a implantação para que a análise chegue pela primeira vez antes de poder consultar os logs. Isso depende do registo no console implementado no seu aplicativo de contêiner.
Use os comandos a seguir para exibir mensagens de log do console.
LOG_ANALYTICS_WORKSPACE_CLIENT_ID=`az containerapp env show --name $CONTAINERAPPS_ENVIRONMENT --resource-group $RESOURCE_GROUP --query properties.appLogsConfiguration.logAnalyticsConfiguration.customerId --out tsv`
az monitor log-analytics query \
--workspace $LOG_ANALYTICS_WORKSPACE_CLIENT_ID \
--analytics-query "ContainerAppConsoleLogs_CL | where ContainerAppName_s == $CONTAINER_APP_NAME | project ContainerAppName_s, Log_s, TimeGenerated" \
--out table
Limpar recursos
Se você não vai continuar a usar este aplicativo, execute o seguinte comando para excluir o grupo de recursos junto com todos os recursos criados neste início rápido.
Atenção
O comando a seguir exclui o grupo de recursos especificado e todos os recursos contidos nele. Se existirem recursos fora do escopo deste início rápido no grupo de recursos especificado, eles também serão excluídos.
az group delete --name $RESOURCE_GROUP
Gorjeta
Tem problemas? Informe-nos no GitHub abrindo um problema no repositório de Aplicativos de Contêiner do Azure.