O Artifact Registry armazena em cache imagens públicas do Docker Hub acessadas com frequência
mirror.gcr.io
: Você pode configurar o daemon do Docker para usar uma imagem
pública armazenada em cache, se houver uma disponível, ou extrair a imagem do Docker Hub se uma cópia em cache
não estiver disponível.
Os serviços do Google Cloud, como o Cloud Build e o Google Kubernetes Engine, verificam automaticamente se há imagens em cache antes de tentar extrair uma imagem do Docker Hub.
Imagens em cache em mirror.gcr.io
são:
- armazenadas em um repositório gerenciado pelo Google;
- mais protegidas das interrupções do Docker Hub;
- integradas facilmente ao ecossistema do Google Cloud;
- Sincronizadas com o Docker Hub.
Como configurar o daemon do Docker
Para configurar o daemon do Docker para extrair imagens do cache do Artifact Registry:
CLI
Configure o daemon de uma das seguintes maneiras:
Para configurar o daemon do Docker automaticamente na inicialização, defina o seguinte valor em
/etc/docker/daemon.json
{ "registry-mirrors": ["https://mirror.gcr.io"] }
Ao iniciar o daemon, transmita o nome do host do Artifact Registry:
dockerd --registry-mirror=https://mirror.gcr.io
Adicione a linha a seguir ao arquivo
/etc/default/docker
:DOCKER_OPTS="${DOCKER_OPTS} --registry-mirror=https://mirror.gcr.io"
Reinicie o daemon do Docker.
No Linux, execute um dos seguintes comandos:
sudo service docker restart
ou
sudo service docker stop && sudo service docker start
No macOS ou Windows, execute o seguinte comando:
docker-machine restart
IU do Docker
- Abra o menu Preferences do Docker.
- Clique em Daemon.
Clique em Advanced. No campo JSON, adicione uma chave
registry-mirrors
comhttps://mirror.gcr.io
como um valor:{ "registry-mirrors" : [ "https://mirror.gcr.io" ] }
Clique em Apply & Restart.
Para verificar se o cache está configurado corretamente, execute:
docker system info
A saída deve incluir Registry Mirrors
e deve ser semelhante a
esta:
Containers: 2
Running: 0
Paused: 0
Stopped: 2
Images: 2
Server Version: 17.03.1-ce
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
...
Registry Mirrors:
https://mirror.gcr.io
Como extrair imagens armazenadas em cache
O Artifact Registry adiciona imagens solicitadas com frequência ao cache para que elas sejam disponibilizadas para solicitações futuras. Ele também remove periodicamente imagens que não são mais solicitadas.
Depois de configurar o daemon do Docker para usar o cache do Artifact Registry,
o Docker executa as seguintes etapas quando você extrai uma imagem pública do Docker Hub
com um comando docker pull
:
- O daemon do Docker verifica o cache do Artifact Registry e busca as imagens, se elas existirem. Se a configuração do daemon incluir outros espelhos do Docker, ele verificará cada um deles para uma cópia em cache da imagem.
- Se a imagem ainda não for encontrada, o daemon do Docker busca a imagem no repositório canônico no Docker Hub.
Extrair imagens em cache não é contabilizado em limites de taxa do Docker Hub. No entanto, não há garantia de que uma imagem específica será armazenada em cache por um longo período. Consiga imagens em cache em mirror.gcr.io
configurando o daemon do Docker.
Para autenticar no Docker Hub para imagens que não são armazenadas em cache no mirror.gcr.io
,
usar os repositórios remotos do Artifact Registry. Controle remoto
os repositórios dão suporte à autenticação no Docker Hub. Recomendamos fazer a autenticação
ao Docker Hub, mesmo que esteja usando apenas imagens públicas, porque isso aumenta
o limite de taxa de download. Para mais informações sobre os limites da taxa de download do Docker Hub,
consulte Limite de taxa do Docker Hub.
A seguir
- É possível criar repositórios remotos do Artifact Registry armazenar em cache imagens do Docker Hub.
- É possível criar seus próprios espelhos do Docker locais para armazenar imagens em cache. Para saber detalhes, consulte a documentação do Docker.
- Leia a documentação do Docker Hub.