Guia de solução de problemas para cache de artefatos
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 aparecem em um repositório real
As credenciais não têm um status de íntegro
Não é possível criar uma regra de cache
Não é possível criar regra de cache usando um curinga
Soluções potenciais
As imagens armazenadas em cache não aparecem em um repositório ativo
Se você estiver tendo um problema com imagens armazenadas em cache que não aparecem em seu repositório no Azure Container Registry(ACR), recomendamos verificar o caminho do repositório. Caminhos de repositório incorretos levam as imagens armazenadas em cache a não aparecerem no repositório no ACR.
- O servidor de login do Docker Hub é
docker.io
. - O servidor de login para o Microsoft Artifact Registry é
mcr.microsoft.com
.
O portal do Azure preenche automaticamente esses campos para você. No entanto, muitos repositórios do Docker começam com library/
seu caminho. Por exemplo, para armazenar em cache o hello-world
repositório, o caminho correto do repositório é docker.io/library/hello-world
.
Credenciais não íntegras
As credenciais são um conjunto de segredos do Cofre de Chaves que funcionam como um Nome de Utilizador e Palavra-passe para repositórios privados. Credenciais não íntegras geralmente são resultado de esses 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 Cofre da Chave do Azure expiraram.
- Verifique se os segredos no Cofre de Chaves do Azure são válidos.
- Verifique se o acesso ao Cofre da Chave do Azure está atribuído.
Para atribuir o acesso ao Cofre da Chave do Azure:
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 Cofre da Chave do Azure.
Não é possível criar uma regra de cache
Limite da regra de cache
Se você estiver enfrentando problemas ao criar uma regra de cache, recomendamos verificar se você tem mais de 1.000 regras de cache criadas.
Recomendamos excluir todas as regras de cache indesejadas para evitar atingir o limite.
Saiba mais sobre a terminologia de 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 seguir estas etapas:
Identificar a regra de cache existente que está causando o conflito. Procure uma regra existente que use um curinga (*) para o repositório de destino.
Exclua a regra de cache conflitante que está sobrepondo o repositório de origem e o curinga.
Crie uma nova regra de cache com o curinga e o repositório de destino desejados.
Verifique novamente a configuração do cache para garantir que a nova regra seja aplicada corretamente e que não haja outras regras conflitantes.
Suporte upstream
Atualmente, o cache de artefatos oferece suporte aos seguintes registros upstream:
Aviso
Os clientes devem gerar o conjunto de credenciais para o conteúdo de origem do hub do Docker.
Registos a montante | Suporte | Disponibilidade |
---|---|---|
Docker Hub | Suporta apenas pulls autenticados. | CLI do Azure, portal do Azure |
Registro de Artefato da Microsoft | Suporta apenas pulls não autenticados. | CLI do Azure, portal do Azure |
Galeria pública do AWS Elastic Container Registry (ECR) | Suporta apenas pulls não autenticados. | CLI do Azure, portal do Azure |
Registro de contêiner do GitHub | Suporta pulls autenticados e não autenticados. | CLI do Azure, portal do Azure |
Cais | Suporta pulls autenticados e não autenticados. | CLI do Azure, portal do Azure |
registry.k8s.io | Suporta pulls autenticados e não autenticados. | CLI do Azure |
Registro de contêiner do Google | Suporta pulls autenticados e não autenticados. | CLI do Azure |