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:

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:

  1. 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.

  2. Exclua a regra de cache conflitante que está sobrepondo o repositório de origem e o curinga.

  3. Crie uma nova regra de cache com o curinga e o repositório de destino desejados.

  4. 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