Tutorial: Criar um Registro de Contêiner do Azure para AKS habilitado pelo Arc
Aplica-se a: AKS no Azure Stack HCI 22H2, AKS no Windows Server
Um Registro de Contêiner do Azure é um registro privado para imagens de contêiner. Um registo de contentor privado permite-lhe criar e implementar as suas aplicações e código personalizado de forma segura.
Neste tutorial, parte dois de sete, você implanta uma instância do Registro de Contêiner do Azure e envia por push uma imagem de contêiner para ela para uso no AKS. Saberá como:
- Criar uma instância do Azure Container Registry
- Marcar uma imagem de contêiner para o Registro de Contêiner do Azure
- Carregue a imagem no Registro de Contêiner do Azure
- Ver imagens no registo
Em tutoriais posteriores, essa instância do Registro de Contêiner do Azure é integrada a um cluster do Kubernetes e um aplicativo é implantado a partir da imagem.
Antes de começar
O tutorial anterior descreveu como criar uma imagem de contêiner para um aplicativo de votação simples do Azure. Se não tiver criado a imagem de aplicação de Votação do Azure, regresse ao Tutorial 1 – Criar imagens de contentor.
Este tutorial requer que você execute a CLI do Azure versão 2.0.53 ou posterior. Executar az --version
para localizar a versão. Se precisar de instalar ou atualizar, veja Install Azure CLI (Instalar o Azure CLI).
Criar um Azure Container Registry
Para criar uma instância do Registro de Contêiner do Azure, primeiro você precisa de um grupo de recursos. Um grupo de recursos do Azure é um contentor lógico no qual os recursos do Azure são implementados e geridos.
Crie um grupo de recursos com o comando az group create. No exemplo seguinte, é criado um grupo de recursos designado myResourceGroup na região eastus:
az group create --name myResourceGroup --location eastus
Crie uma instância do Azure Container Registry com o comando az acr create e indique o seu próprio nome de registo. O nome do registo tem de ser exclusivo no Azure e pode incluir entre 5 a 50 carateres alfanuméricos. No resto deste tutorial, <acrName>
é utilizado como um marcador de posição para o nome do registo de contentor. Forneça seu próprio nome de registro exclusivo. O SKU Básico é um ponto de entrada com otimização de custos para fins de desenvolvimento que fornece um equilíbrio de armazenamento e débito.
az acr create --resource-group myResourceGroup --name <acrName> --sku Basic
Iniciar sessão no registo de contentor
Para utilizar a instância do ACR, primeiro tem de iniciar sessão. Use o comando az acr login e forneça o nome exclusivo dado ao registro de contêiner na etapa anterior:
az acr login --name <acrName>
O comando retorna uma mensagem Login bem-sucedido quando concluído.
Marcar uma imagem de contentor
Para ver uma lista das imagens locais atuais, utilize o comando docker images:
docker images
A saída deste comando mostra uma lista das suas imagens locais atuais:
REPOSITORY TAG IMAGE ID CREATED SIZE
mcr.microsoft.com/azuredocs/azure-vote-front v1 84b41c268ad9 7 minutes ago 944MB
mcr.microsoft.com/oss/bitnami/redis 6.0.8 3a54a920bb6c 2 days ago 103MB
tiangolo/uwsgi-nginx-flask python3.6 a16ce562e863 6 weeks ago 944MB
Para usar a imagem de contêiner azure-vote-front com o Registro de Contêiner do Azure, certifique-se de marcar a imagem com o endereço do servidor de logon do seu Registro. Esta etiqueta é utilizada para encaminhamento ao enviar imagens de contentor para um registo de imagem.
Para obter o endereço do servidor de início de sessão, utilize o comando az acr list e consulte o loginServer da seguinte forma:
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
Agora, marque sua imagem azure-vote-front local com o endereço acrLoginServer do registro de contêiner. Para indicar a versão da imagem, adicione :v1 ao fim do nome da imagem:
docker tag mcr.microsoft.com/azuredocs/azure-vote-front:v1 <acrLoginServer>/azure-vote-front:v1
Para verificar se as tags são aplicadas, execute imagens docker novamente:
docker images
Uma imagem é marcada com o endereço da instância do Registro de Contêiner do Azure e um número de versão:
REPOSITORY TAG IMAGE ID CREATED SIZE
mcr.microsoft.com/azuredocs/azure-vote-front v1 84b41c268ad9 16 minutes ago 944MB
mycontainerregistry.azurecr.io/azure-vote-front v1 84b41c268ad9 16 minutes ago 944MB
mcr.microsoft.com/oss/bitnami/redis 6.0.8 3a54a920bb6c 2 days ago 103MB
tiangolo/uwsgi-nginx-flask python3.6 a16ce562e863 6 weeks ago 944MB
Enviar imagens para o registo
Com sua imagem criada e marcada, envie a imagem azure-vote-front para sua instância do Registro de Contêiner do Azure. Use o docker push e forneça seu próprio acrLoginServer
endereço para o nome da imagem da seguinte maneira:
docker push <acrLoginServer>/azure-vote-front:v1
Pode levar alguns minutos para concluir o envio por push de imagem para o Registro de Contêiner do Azure.
Listar imagens no registo
Para retornar uma lista de imagens que foram enviadas por push para sua instância do Registro de Contêiner do Azure, use o comando az acr repository list . Indique o seu próprio <acrName>
da seguinte forma:
az acr repository list --name <acrName> --output table
A saída de exemplo seguinte lista a imagem azure-vote-front como disponível no registo:
Result
----------------
azure-vote-front
Para ver as tags de uma imagem específica, use o comando az acr repository show-tags :
az acr repository show-tags --name <acrName> --repository azure-vote-front --output table
A saída de exemplo seguinte mostra a imagem v1 marcada num passo anterior:
Result
--------
v1
Tem agora uma imagem de contentor armazenada numa instância privada do Azure Container Registry. Esta imagem é implantada do Registro de Contêiner do Azure em um cluster Kubernetes no próximo tutorial.
Próximos passos
Neste tutorial, você criou um Registro de Contêiner do Azure e enviou por push uma imagem para uso em um cluster do Kubernetes. Aprendeu a:
- Criar uma instância do Azure Container Registry (ACR)
- Marcar uma imagem de contentor para o ACR
- Carregar os ficheiros de imagem para o ACR
- Ver imagens no registo
Avance para o próximo tutorial para saber como implementar um cluster do Kubernetes no Azure.