Guia de solução de problemas para cache de artefato
Neste tutorial, você soluciona os problemas mais comuns de um registro habilitado com o recurso de cache de artefatos identificando os Sintomas, as causas e as possíveis soluções para usar efetivamente o recurso.
Sintomas e causas
Pode incluir um ou mais dos seguintes problemas:
As imagens armazenadas em cache não são exibidas em um repositório real
As credenciais têm um status não íntegro
Não é possível criar uma regra de cache
Não é possível criar regra de cache usando um curinga
Possíveis soluções
As imagens armazenadas em cache não são exibidas em um repositório online
Caso você esteja tendo um problema com imagens armazenadas em cache que não são exibidas no repositório do ACR (Registro de Contêiner do Azure), recomendamos verificar o caminho do repositório. Os caminhos de repositório incorretos fazem com que as imagens armazenadas em cache não sejam exibidas no seu repositório do ACR.
- O servidor de logon do Docker Hub é
docker.io
. - O servidor de logon do Registro de Artefato da Microsoft é
mcr.microsoft.com
.
O portal do Azure preenche automaticamente esses campos para você. No entanto, muitos repositórios do Docker começam com library/
no caminho. Por exemplo, para armazenar em cache o repositório hello-world
, o caminho correto do repositório é docker.io/library/hello-world
.
Credenciais não íntegras
As credenciais são um conjunto de segredos do Key Vault que operam como um nome de usuário e uma senha para repositórios privados. Em geral, as credenciais não íntegras são o resultado desses segredos não serem mais válidos. No portal do Azure, você pode selecionar as credenciais para editar e aplicar alterações.
- Verifique se os segredos no Azure Key Vault expiraram.
- Verifique se os segredos no Azure Key Vault são válidos.
- Verifique se o acesso ao Azure Key Vault foi atribuído.
Para atribuir o acesso ao Azure Key Vault:
az keyvault set-policy --name myKeyVaultName --object-id myObjID --secret-permissions get
Saiba mais sobre os cofres de chaves. Saiba mais sobre Como atribuir o acesso ao Azure Key Vault.
Não é possível criar uma regra de cache
Limite da regra de cache
Se estiver enfrentando problemas ao criar uma regra de cache, recomendamos verificar se você criou mais de 1.000 regras de cache.
Recomendamos excluir as regras de cache indesejadas para evitar atingir o limite.
Saiba mais sobre a terminologia do cache.
Não é possível criar regra de cache usando um curinga
Se você estiver tentando criar uma regra de cache, mas houver um conflito com uma regra existente. A mensagem de erro sugere que já existe uma regra de cache com um curinga para o repositório de destino especificado.
Para resolver esse problema, você precisa de seguir essas etapas:
Identifique a regra de cache existente que causa o conflito. Procure uma regra existente que usa um curinga (*) para o repositório de destino.
Exclua a regra de cache em conflito que está sobrepondo o repositório de origem e o curinga.
Crie uma nova regra de cache com o curinga desejado e o repositório de destino.
Verifique novamente sua configuração do cache para garantir que a nova regra seja aplicada corretamente e não haja outras regras conflitantes.
Compatibilidade com upstream
Atualmente, o cache de artefato dá suporte aos seguintes registros upstream:
Aviso
Os clientes precisam gerar um conjunto de credenciais para o conteúdo de origem do Docker Hub.
Registros Upstream | Suporte | Disponibilidade |
---|---|---|
Docker Hub | Dá suporte somente a pulls autenticados. | CLI do Azure, portal do Azure |
Registro de Artefato da Microsoft | Compatível apenas com pulls não autenticados. | CLI do Azure, portal do Azure |
Galeria Pública do Registro de Contêiner Elástico (ECR) da AWS | Compatível apenas com 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 |
registry.k8s.io | Dá suporte a pulls autenticados e não autenticados. | CLI do Azure |
Registro de contêiner do Google | Dá suporte a pulls autenticados e não autenticados. | CLI do Azure |