Solução de problemas gerais

Saiba mais sobre as etapas de solução de problemas que se aplicam a todos os formatos de artefato ao trabalhar com o Artifact Registry. Para problemas específicos de um formato de artefato, consulte a página específica do formato.

Repositório ou local inválido nos comandos

Use as informações a seguir para diagnosticar erros de local ou nome de repositório inválidos.

Padrões de local e repositório para gcloud

Se você definir um repositório e um local padrão na Google Cloud CLI para omitir as flags --location e --repository dos comandos gcloud artifacts, tente executar o comando com falha usando as flags e os valores correspondentes. Para detalhes sobre a sintaxe de um comando específico, execute o comando com a flag --help.

A configuração padrão do repositório não se aplica aos comandos gcloud artifacts em que você especifica um nome de repositório sem a flag --repository. Por exemplo, é necessário especificar o nome do repositório em um comando gcloud artifacts repositories describe como este:

gcloud artifacts repositories describe my-repo --location=us-west1

Se o comando ainda falhar, verifique se você especificou valores válidos para o repositório ou local.

Localização do repositório

Para listar todos os locais compatíveis do Artifact Registry, execute o comando:

gcloud artifacts locations list

A política da organização pode incluir restrições de local. O Artifact Registry aplica essas restrições no momento da criação do repositório. O Artifact Registry não aplica a política retroativamente em repositórios anteriores às restrições de local.

Nomes de repositórios em comandos gcloud

É possível listar repositórios para conferir os nomes deles em um projeto ou local especificado.

Para listar todos os repositórios em um projeto, execute o comando:

gcloud artifacts repositories list --project=PROJECT-ID \
    --location=all

Para listar todos os repositórios em um local, execute o comando:

gcloud artifacts repositories list --project=PROJECT-ID \
    --location=LOCATION

Substitua PROJECT-ID pelo ID do projeto Google Cloud e LOCATION pelo local do repositório.

O comando retorna informações para cada repositório, semelhantes ao exemplo a seguir:

REPOSITORY: my-repo
FORMAT: DOCKER
DESCRIPTION:
LOCATION: us-west1
LABELS:
ENCRYPTION: Google-owned and Google-managed encryption key
CREATE_TIME: 2021-09-23T19:39:10
UPDATE_TIME: 2021-09-23T19:39:10

O valor de REPOSITORY é o que você usa com comandos gcloud artifacts que incluem o nome do repositório como um parâmetro.

Por exemplo, este comando usa a flag --repository:

gcloud artifacts packages list --location=us-west1 --repository=my-repo

Este comando usa apenas o nome do repositório, sem uma flag:

gcloud artifacts repositories describe my-repo --location=us-west1

Nomes de repositórios com clientes de terceiros

Para clientes terceirizados, geralmente é usado um caminho completo do repositório ao configurar clientes, como us-west1-docker.pkg.dev/my-project/my-repo. Em seguida, siga as convenções do cliente para fazer upload e download de pacotes. Para detalhes sobre configuração e uso do cliente, consulte a documentação do formato com que você está trabalhando.

Se você estiver fazendo a transição do Container Registry, observe que todos os caminhos de imagem precisam incluir um nome de repositório do Artifact Registry. Não é possível especificar um caminho de imagem que inclua apenas um ID do projeto.

  • Caminho inválido: us-east1-docker.pkg.dev/my-project/my-image
  • Caminho válido: us-east1-docker.pkg.dev/my-project/my-repo/my-image

Não é possível enviar ou extrair de repositórios não excluídos

Os repositórios não funcionam mais corretamente depois que você recupera um projeto Google Cloud ou ativa a API Artifact Registry depois de desativá-la.

Se você desativar a API Artifact Registry ou excluir o projeto, os serviços do Artifact Registry vão ficar indisponíveis. O Artifact Registry exclui os dados do repositório após 7 dias.

Saiba mais sobre a exclusão de dados no Google Cloud.

Erro ao extrair o arquivo secundário do Prometheus para o Cloud Run em um perímetro de serviço

Você está usando o Artifact Registry com o VPC Service Controls e tenta extrair a imagem do arquivo secundário do Prometheus para o Cloud Run em um perímetro de serviço. Você recebe um erro 403 permission denied.

Para resolver esse problema, permita a saída para o projeto cloud-ops-agents-artifacts na regra de saída configurada para usar mirror.gcr.io no perímetro de serviço. Para isso, adicione projects/1042947621568 como um recurso na regra de saída.