Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O recurso de cache de artefatos do Registro de Contêiner do Azure permite armazenar em cache imagens de contêiner em repositórios públicos e privados.
O cache de artefatos permite operações de pull mais rápidas e confiáveis por meio do ACR (Registro de Contêiner do Azure). Ele usa recursos como replicação geográfica e suporte à zona de disponibilidade, visando maior disponibilidade e downloads de imagem mais rápidas. Você pode acessar registros armazenados em cache em redes privadas para se alinhar às configurações de firewall e aos padrões de conformidade.
O cache de artefato aborda o desafio dos limites de pull impostos por registros públicos. Recomendamos autenticar suas regras de cache com suas credenciais de origem upstream. Em seguida, você pode efetuar pull de imagens do ACR local, ajudando a reduzir os limites de taxa.
O recurso de cache de artefatos está disponível nas camadas de serviçoBasic, Standard e Premium. Você pode habilitar regras de cache de artefatos no portal do Azure ou usando a CLI do Azure.
Terminologia
Ao trabalhar com o cache de artefatos, é útil entender a seguinte terminologia:
Regra de cache: uma regra criada para efetuar pull de artefatos de um repositório com suporte para seu cache. Uma regra de cache contém quatro partes:
-
Nome da regra: o nome da regra de cache. Por exemplo,
Hello-World-Cache. - Origem: o nome do registro de origem.
-
Caminho do repositório: o caminho de origem do repositório para localizar e recuperar artefatos que você deseja armazenar em cache. Por exemplo,
docker.io/library/hello-world. -
Novo namespace do repositório do ACR: o nome do novo caminho do repositório para armazenar artefatos. Por exemplo,
hello-world. O repositório ainda não pode existir dentro da instância do ACR.
-
Nome da regra: o nome da regra de cache. Por exemplo,
Credenciais: um nome de usuário e uma senha definidos para o registro de origem. Você precisa de credenciais para autenticar com um repositório público ou privado. As credenciais contêm quatro partes:
- Credenciais: o nome das suas credenciais.
- Servidor de logon do registro: o servidor de logon do registro de origem.
- Autenticação de origem: os locais do cofre de chaves para armazenar credenciais.
- Segredos de nome de usuário e senha: segredos que contêm o nome de usuário e a senha.
Limitações atuais
Ao usar o cache de artefatos, tenha em mente as seguintes limitações:
- O cache só ocorrerá depois que, pelo menos, um pull de imagem for concluído na imagem de contêiner disponível. Para cada nova imagem disponível, um novo pull de imagem deve ser concluído. Atualmente, o cache de artefato não efetua pull automático de novas marcas de imagens quando uma nova marca está disponível.
- O cache de artefatos dá suporte a um máximo de 1.000 regras de cache.
- As regras de cache de artefatos não podem se sobrepor a outras regras de cache. Em outras palavras, se você tiver uma regra de cache de artefato para um determinado caminho do Registro, não poderá adicionar outra regra de cache que se sobreponha a ela.
Suporte a upstream
Atualmente, o cache de artefatos dá suporte aos seguintes registros upstream.
Aviso
Para obter conteúdo de origem do Hub do Docker, você deve gerar um conjunto de credenciais usando a CLI do Azure ou o portal do Azure.
Algumas imagens públicas do Hub do Docker são mapeadas para o namespace, library, acessado publicamente. Nesse caso, se você não incluir o caminho library, o cache de artefatos o incluirá automaticamente para você.
| Registros upstream | Apoio | Disponibilidade |
|---|---|---|
| Docker Hub | Dá suporte somente a pulls autenticados. | CLI do Azure, portal do Azure |
| Registro de Artefato da Microsoft | Dá suporte apenas a pulls não autenticados. | CLI do Azure, portal do Azure |
| Galeria Pública do Registro de Contêiner Elástico (ECR) da AWS | Dá suporte apenas a pulls não autenticados. | CLI do Azure, portal do Azure |
| Registro de Contêiner do GitHub | Dá suporte a pulls autenticados e não autenticados. | CLI do Azure, portal do Azure |
| Quay | Dá suporte a pulls autenticados e não autenticados. | CLI do Azure, portal do Azure |
Registro de Imagem de Contêiner do Kubernetes (registry.k8s.io) |
Dá suporte a pulls autenticados e não autenticados. | CLI do Azure |
Registro de Artefatos do Google (*.pkg.dev) |
Dá suporte somente a pulls autenticados. | CLI do Azure |
Registro de Contêiner do legado do Google (gcr.io) |
Dá suporte a pulls autenticados e não autenticados. | CLI do Azure |
Método de autenticação para o Registro de Artefatos do Google
Para configurar o Cache de Artefatos do GAR (Registro de Artefatos do Google) privado, recomendamos usar uma Chave de Conta de Serviço (criada no Console do Google Cloud) para autenticar com GAR. Você pode definir uma data de expiração personalizada para a chave da Conta de Serviço (por exemplo, 3 meses) e persistir a chave no Azure Key Vault.
Embora você possa usar um token de acesso (gerado da CLI do gcloud) para autenticar, ele não é recomendado para uso com o Cache de Artefatos, pois o token de acesso expira após 1 hora.
Para obter mais informações sobre como criar uma chave de conta de serviço, consulte Authenticate with Google Artifact Registry. Depois de ter a Chave da Conta de Serviço, salve-a como um segredo no Azure Key Vault. Em seguida, aponte a senha do conjunto de credenciais para esse segredo. O nome de usuário deve ser definido como:
-
_json_keyse você estiver usando a chave da conta de serviço no formato JSON como ela foi fornecida quando você criou o arquivo. -
_json_key_base64se você tiver codificado em base64 todo o conteúdo do arquivo de chave da conta.
Para obter mais informações sobre como criar um conjunto de credenciais, siga os links na próxima seção.
Próximas etapas
- Saiba como habilitar o cache de artefatos usando o portal do Azure ou a CLI do Azure.
- Saiba mais sobre como usar curingas para fazer a correspondência de vários caminhos no registro de imagem de contêiner.