(PRECADO) Implementar e utilizar Azure Container Registry
Dica
Para a versão atualizada este tutorial que utiliza Azure Kubernetes Service, consulte Tutorial: Implementar e utilizar Azure Container Registry.
Aviso
O Serviço de Contentores Azure (ACS) está a ser depreciado. Não estão a ser adicionadas novas funcionalidades ou funcionalidades ao ACS. Todas as APIs, experiência do portal, comandos CLI e documentação são marcados como precedidos.
Em 2017, introduzimos Azure Kubernetes Service (AKS) para simplificar a gestão, implantação e operações da Kubernetes. Se utilizar o orquestrador Kubernetes, por favor, emigre para a AKS até 31 de janeiro de 2020. Para começar, consulte migrar para Azure Kubernetes Service.
Para mais informações, consulte o anúncio de depreciação do Serviço de Contentores Azure no Azure.com.
O Azure Container Registry (ACR) é um registo privado e baseado no Azure para imagens de contentor do Docker. Este tutorial, parte 2 de 7, orienta-o na implementação de uma instância do Azure Container Registry e no envio de uma imagem de contentor para a mesma. Os passos concluídos incluem:
- Implementar uma instância do Azure Container Registry (ACR)
- Marcar uma imagem de contentor para o ACR
- Carregar os ficheiros de imagem para o ACR
Em tutoriais posteriores, esta instância do ACR é integrada num cluster do Kubernetes do Azure Container Service.
Antes de começar
No tutorial anterior, foi criada uma imagem de contentor para uma aplicação 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 a execução da versão 2.0.4 ou posterior da CLI do Azure. Executar az --version
para localizar a versão. Se precisar de instalar ou atualizar, veja Instalar a CLI do Azure.
Implementar o Azure Container Registry
Ao implementar um Azure Container Registry, tem de começar por obter 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. Neste exemplo, é criado um grupo de recursos chamado myResourceGroup
na região westeurope
.
az group create --name myResourceGroup --location westeurope
Crie um registo do Contentor Azure com o comando az acr create . O nome de um Registo de Contentor tem de ser exclusivo.
az acr create --resource-group myResourceGroup --name <acrName> --sku Basic
Em todo o resto deste tutorial, utilizamos <acrname>
como um marcador de posição para o nome do registo de contentor.
Iniciar sessão no registo de contentor
Utilize o comando az acr login para iniciar sessão na instância do ACR. Tem de fornecer o nome exclusivo dado ao registo de contentor quando este foi criado.
az acr login --name <acrName>
O comando devolve uma mensagem "Início de sessão com êxito" depois de concluir.
Marcar imagens de contentor
Para ver uma lista das imagens atuais, utilize o comando docker images.
docker images
Resultado:
REPOSITORY TAG IMAGE ID CREATED SIZE
azure-vote-front latest 4675398c9172 13 minutes ago 694MB
redis latest a1b99da73d05 7 days ago 106MB
tiangolo/uwsgi-nginx-flask flask 788ca94b2313 9 months ago 694MB
Cada imagem de contentor tem de ser marcada com o nome loginServer do registo. Esta etiqueta é utilizada para encaminhamento ao enviar imagens de contentor para um registo de imagem.
Para obter o nome loginServer, execute o seguinte comando.
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
Agora, marque a imagem azure-vote-front
com o loginServer do registo de contentor. Além disso, adicione :v1
ao final do nome da imagem. Esta etiqueta identifica a versão da imagem.
docker tag azure-vote-front <acrLoginServer>/azure-vote-front:v1
Depois de marcada, execute imagens do docker para verificar a operação.
docker images
Resultado:
REPOSITORY TAG IMAGE ID CREATED SIZE
azure-vote-front latest eaf2b9c57e5e 8 minutes ago 716 MB
mycontainerregistry082.azurecr.io/azure-vote-front v1 eaf2b9c57e5e 8 minutes ago 716 MB
redis latest a1b99da73d05 7 days ago 106MB
tiangolo/uwsgi-nginx-flask flask 788ca94b2313 8 months ago 694 MB
Enviar imagens para o registo
Envie a imagem azure-vote-front
para o registo.
Utilizando o seguinte exemplo, substitua o nome loginServer do ACR pelo loginServer do seu ambiente.
docker push <acrLoginServer>/azure-vote-front:v1
Este processo demora poucos minutos a concluir.
Listar imagens no registo
Para devolver uma lista de imagens que foram enviadas para o seu Azure Container Registry, utilize o comando az acr repository list. Atualize o comando com o nome de instância do ACR.
az acr repository list --name <acrName> --output table
Resultado:
Result
----------------
azure-vote-front
Em seguida, para ver as etiquetas de uma imagem específica, utilize o comando az acr repository show-tags.
az acr repository show-tags --name <acrName> --repository azure-vote-front --output table
Resultado:
Result
--------
v1
Ao concluir o tutorial, a imagem de contentor foi armazenada numa instância privada do Azure Container Registry. Esta imagem é implementada do ACR para um cluster do Kubernetes em tutoriais posteriores.
Passos seguintes
Neste tutorial, um Azure Container Registry foi preparado para utilização num cluster do AKS Kubernetes. Foram efetuados os seguintes passos:
- Implementou uma instância do Azure Container Registry
- Marcou uma imagem de contentor para o ACR
- Carregou a imagem para o ACR
Avance para o próximo tutorial para saber mais sobre implementar um cluster do Kubernetes no Azure.