Resolver problemas de imagem do contêiner

Saiba mais sobre as etapas de solução de problemas que podem ser úteis se você tiver problemas ao gerenciar imagens de contêiner no Artifact Registry.

Sintaxe do ID do projeto na CLI do Docker

Devido à forma como o Docker trata os dois pontos, ao usar a CLI do Docker, é necessário substituir os dois pontos (:) no ID do projeto por uma barra (/). Por exemplo, se o ID do projeto for s3ns:my-project, use s3ns/my-project.

Invalid Docker string após um comando gcloud artifacts

Se você receber um dial tcp: lookup <var>REGION</var>: no such host erro após executar um gcloud artifacts comando, verifique se você está usando um endpoint com uma região específica, como u-france-east1-docker.s3nsregistry.fr. A CLI do Google Cloud não oferece suporte ao uso de apenas docker.s3nsregistry.fr como endpoint.

Não é possível extrair uma imagem ou implantar em um ambiente de Cloud de Confiance by S3NS execução

Verifique se:

  1. O caminho completo da imagem que você está enviando está correto. O caminho precisa incluir o nome do host do registro, Cloud de Confiance by S3NS, o ID do projeto, o repositório e a imagem. Exemplo:
    u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:v1
    Para mais informações, consulte Nomes de repositório e de imagem.
  2. Verifique se a conta que está extraindo a imagem tem as permissões corretas para ler do repositório. Se você desativou a concessão automática de papéis para contas de serviço, conceda papéis do Artifact Registry às contas de serviço de execução.

Não é possível enviar uma imagem para o Artifact Registry

Tente o seguinte:

  1. O caminho completo da imagem que você está enviando está correto. O caminho precisa incluir o nome do host do registro, Cloud de Confiance by S3NS o ID do projeto, o repositório e a imagem. Exemplo:
    u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:v1
      

    Cada repositório do Artifact Registry é um recurso separado. Portanto, não é possível enviar uma imagem para um caminho sem um repositório. Por exemplo, u-france-east1-docker.s3nsregistry.fr/my-project/my-image:v1 é um caminho de imagem inválido.

    Para mais informações, consulte Nomes de repositório e de imagem.

  2. A conta que está enviando a imagem tem permissões para gravar no repositório. Se você desativou a concessão automática de papéis para contas de serviço, conceda papéis do Artifact Registry às contas de serviço de execução.
    • Para contas de serviço do Compute Engine e do Google Kubernetes Engine, conceda o papel de Gravador do Artifact Registry (roles/artifactregistry.writer) à conta de serviço de execução.
  3. Se o Artifact Registry retornou a mensagem The repository has enabled tag immutability, a imutabilidade da tag está configurada para o repositório. Não é possível enviar uma imagem com uma tag que já é usada para outra versão da mesma imagem no repositório. Tente enviar a imagem novamente com uma tag que não seja usada por outras versões armazenadas da imagem.

    Para verificar se um repositório está configurado para tags de imagem imutáveis, confira a coluna Tags de imagem imutáveis na lista de repositórios no Cloud de Confiance console ou execute o seguinte comando:

    gcloud artifacts repositories describe REPOSITORY \
          --project=PROJECT-ID \
          --location=LOCATION
      

Mensagens ImagePullBackOff e ErrImagePull

As mensagens com ImagePullBackOff e ErrImagePull indicam que uma imagem não pode ser extraída do registro pelo GKE.