Envie sua primeira imagem para o registro de contêiner do Azure usando a CLI do Docker
Um registro de contêiner do Azure armazena e gerencia imagens de contêiner privado e outros artefatos, semelhante à maneira como o Docker Hub armazena imagens de contêiner público do Docker. Você pode usar a interface de linha de comando do Docker (CLI do Docker) para operações de login, push, pull e outras imagens de contêiner no registro do contêiner.
Nas etapas a seguir, você baixa uma imagem pública do Nginx, marca-a para seu registro de contêiner privado do Azure, envia-a por push para o seu registro e, em seguida, extrai-a do registro.
Pré-requisitos
- Registo de contentores do Azure - crie um registos de contentores na sua subscrição do Azure. Por exemplo, use o portal do Azure, a CLI do Azure ou o Azure PowerShell.
- CLI do Docker - Você também deve ter o Docker instalado localmente. O Docker disponibiliza pacotes que o configuram facilmente em qualquer sistema macOS, Windows ou Linux.
Iniciar sessão num registo
Há várias maneiras de autenticar em seu registro de contêiner privado.
O método recomendado ao trabalhar em uma linha de comando é com o comando az acr login da CLI do Azure. Por exemplo, para acessar um registro chamado myregistry
, entre na CLI do Azure e autentique-se em seu registro:
az login
az acr login --name myregistry
Você também pode fazer login com o login do docker. Por exemplo, você pode ter atribuído uma entidade de serviço ao seu registro para um cenário de automação. Ao executar o comando a seguir, forneça interativamente o appID da entidade de serviço (nome de usuário) e a senha quando solicitado. Para obter as práticas recomendadas para gerenciar credenciais de login, consulte a referência do comando de login do docker:
docker login myregistry.azurecr.io
Ambos os comandos retornam Login Succeeded
uma vez concluídos.
Nota
- Talvez você queira usar o Visual Studio Code com a extensão Docker para um logon mais rápido e conveniente.
Gorjeta
Sempre especifique o nome do Registro totalmente qualificado (todas as letras minúsculas) quando você usar docker login
e quando marcar imagens para enviar por push para o seu registro. Nos exemplos deste artigo, o nome totalmente qualificado é myregistry.azurecr.io.
Puxe uma imagem pública do Nginx
Primeiro, puxe uma imagem Nginx pública para o seu computador local. Este exemplo puxa a imagem oficial do Nginx.
docker pull nginx
Executar o contentor localmente
Execute o seguinte comando docker run para iniciar uma instância local do contêiner Nginx interativamente (-it
) na porta 8080. O --rm
argumento especifica que o contêiner deve ser removido quando você o parar.
docker run -it --rm -p 8080:80 nginx
Navegue até http://localhost:8080
para visualizar a página da Web padrão servida pelo Nginx no contêiner em execução. Você verá uma página semelhante à seguinte:
Como você iniciou o contêiner interativamente com -it
o , você pode ver a saída do servidor Nginx na linha de comando depois de navegar até ele em seu navegador.
Para parar e remover o recipiente, pressione Control
+C
.
Criar um alias da imagem
Use a tag docker para criar um alias da imagem com o caminho totalmente qualificado para seu registro. Este exemplo especifica o espaço de nomes samples
para evitar sobrepovoar a raiz do registo.
docker tag nginx myregistry.azurecr.io/samples/nginx
Para obter mais informações sobre marcação com namespaces, consulte a seção Namespaces do repositório de Práticas recomendadas para o Registro de Contêiner do Azure.
Enviar a imagem para o registo
Agora que você marcou a imagem com o caminho totalmente qualificado para seu registro privado, você pode enviá-la para o registro com docker push:
docker push myregistry.azurecr.io/samples/nginx
Extrair a imagem do registo
Use o comando docker pull para extrair a imagem do seu registro:
docker pull myregistry.azurecr.io/samples/nginx
Iniciar o contentor de Nginx
Use o comando docker run para executar a imagem que você extraiu do seu registro:
docker run -it --rm -p 8080:80 myregistry.azurecr.io/samples/nginx
Navegue até http://localhost:8080
para exibir o contêiner em execução.
Para parar e remover o recipiente, pressione Control
+C
.
Remover a imagem (opcional)
Se você não precisa mais da imagem Nginx, você pode excluí-la localmente com o comando docker rmi .
docker rmi myregistry.azurecr.io/samples/nginx
Para remover imagens do seu registro de contêiner do Azure, você pode usar o comando az acr repository delete da CLI do Azure. Por exemplo, o comando a seguir exclui o manifesto referenciado pela samples/nginx:latest
tag , quaisquer dados de camada exclusivos e todas as outras tags que fazem referência ao manifesto.
az acr repository delete --name myregistry --image samples/nginx:latest
Recomendações
Aqui você pode encontrar mais informações sobre as opções de autenticação.
Próximos passos
Agora que já sabe o básico, está pronto para começar a utilizar o seu registo! Por exemplo, implante imagens de contêiner do seu registro para:
Opcionalmente, instale a Extensão do Docker para Visual Studio Code e a extensão da Conta do Azure para trabalhar com seus registros de contêiner do Azure. Extraia e envie imagens por push para um registro de contêiner do Azure ou execute Tarefas ACR, tudo dentro do Visual Studio Code.