{{site.data.keyword.attribute-definition-list}}

Perguntas frequentes sobre {{site.data.keyword.registryshort_notm}}

Encontre respostas para as perguntas mais frequentes sobre o {{site.data.keyword.registryshort_notm}}, incluindo como configurar namespaces, gerenciar imagens e definir permissões de acesso.

Para obter perguntas frequentes sobre como gerenciar a segurança e as vulnerabilidades da imagem usando Vulnerability Advisor, consulte Perguntas frequentes para Vulnerability Advisor.

Onde está a documentação de referência para {{site.data.keyword.registryshort}}?

A documentação de referência para {{site.data.keyword.registrylong_notm}} está disponível na documentação {{site.data.keyword.cloud_notm}}. Para obter mais informações, consulte Sobre {{site.data.keyword.registryshort}} e {{site.data.keyword.registryshort}} CLI.

Como faço para configurar a CLI do {{site.data.keyword.registryshort}}?

Para configurar a interface de linha de comando (CLI) do site {{site.data.keyword.registrylong_notm}}, siga as etapas abaixo:

  1. Certifique-se de que a CLI do {{site.data.keyword.cloud_notm}} esteja instalada. Para verificar se ele está instalado, execute o comando ibmcloud help.
  2. Instale o plug-in container-registry CLI executando o comando ibmcloud plugin install container-registry.
  3. Faça login no {{site.data.keyword.cloud_notm}} usando o comando ibmcloud login .
  4. Verifique a instalação verificando a versão atual do plug-in container-registry CLI com o comando ibmcloud plugin list.

Agora você pode usar a CLI do {{site.data.keyword.registrylong_notm}} para gerenciar o registro e seus recursos para a sua conta {{site.data.keyword.cloud_notm}}.

Para obter mais informações, consulte Configuração da CLI e do namespace do {{site.data.keyword.registryshort}} e Introdução ao {{site.data.keyword.registryshort}}.

Por que o ibmcloud cr não é um comando conhecido?

Se você receber uma mensagem informando que ibmcloud cr não é um comando registrado, o plug-in container-registry CLI não está instalado ou não está atualizado. Consulte Por que os comandos {{site.data.keyword.registryshort_notm}}(ibmcloud cr)falham com uma mensagem de que não estão registrados? para obter ajuda.

Se tiver problemas com um comando não registrado, é provável que você não tenha a versão mais recente do plug-in. Para obter mais informações sobre como atualizar a CLI do {{site.data.keyword.registryshort}}, consulte Atualização do plug-in da CLI do container-registry.

Como faço para configurar meu firewall para permitir conexões com {{site.data.keyword.registryshort}}?

Você pode usar um firewall de camada 7 com os domínios listados em Acesso a {{site.data.keyword.registryshort}} por meio de um firewall ou usar uma rede privada virtual(VPN).

Qual é o nome do meu namespace?

Para descobrir os nomes de seus namespaces, execute o comando ibmcloud cr namespace-list comando.

Você também pode usar a API para listar seus namespaces usando o método GET /api/v1/namespaces.

Para obter mais informações sobre namespaces, consulte Registry namespace. Para planejar seus namespaces, consulte Planejamento de namespaces.

Quantos namespaces posso ter?

É possível ter 100 namespaces de registro em cada região.

Posso renomear um namespace?

Não é possível renomear um namespace. Se você quiser alterar o nome do namespace, deverá criar um namespace com o novo nome e transferir seus dados. Para transferir seus dados, você pode copiar o conteúdo do espaço de nome existente para o espaço de nome que você criou.

Se não quiser transferir dados manualmente, você pode criar um script para essa ação usando o comando ibmcloud cr image-tag comando. Por exemplo, você pode usar o seguinte script, em que OLD_NAMESPACE é o namespace existente e NEW_NAMESPACE é o namespace que você criou:

IMAGES=$(icr images --restrict OLD_NAMESPACE --format "{{ .Repository }}:{{ .Tag }}")
for i in $IMAGES ; do
   new=$(echo $i | sed "s|/OLD_NAMESPACE/|/NEW_NAMESPACE/|1")
   ibmcloud cr image-tag $i $new
done

Por que não tenho autorização para criar um namespace?

A mensagem de erro You are not authorized to access the specified resource. indica que você não tem as permissões de usuário necessárias para trabalhar com namespaces.

Consulte Por que não estou autorizado a acessar um recurso específico em {{site.data.keyword.registryshort}}? para obter ajuda.

Por que não consigo criar um namespace?

Se estiver tendo problemas ao tentar adicionar um namespace em {{site.data.keyword.registryshort_notm}}, pode ser uma das seguintes causas:

  • Caracteres inválidos são incluídos no namespace.
  • O namespace já está em uso.
  • Você está reutilizando um namespace que foi excluído recentemente.
  • Você não possui as permissões necessárias para criar um namespace.

Consulte Por que não consigo adicionar um namespace em {{site.data.keyword.registryshort}}? para obter ajuda.

Como faço para excluir um namespace?

Se você não precisar mais de um namespace de registro, será possível remover o namespace da sua conta do {{site.data.keyword.cloud_notm}}. Para obter mais informações, consulte Removendo namespaces.

Quando você remove um namespace, qualquer imagemarmazenada nesse espaço também é excluída. Essa ação não pode ser desfeita

Como posso acessar meus namespaces {{site.data.keyword.registryshort}}?

Você pode acessar seus namespaces {{site.data.keyword.registrylong_notm}} de várias maneiras, dependendo do seu caso de uso. É possível criar, visualizar, modificar e excluir namespaces no console {{site.data.keyword.cloud_notm}} ou na CLI {{site.data.keyword.cloud_notm}}. Você pode empurrar e puxar imagens usando ferramentas de terceiros, como Docker, Podman, SkopeoORAS, regctl e Crane. Você também pode usar os SDKs do {{site.data.keyword.cloud_notm}} para manipular o registro.

Autenticação da automação com credenciais de longa duração
Use chaves de API (chaves de API de usuário ou chaves de API de ID de serviço) com políticas de acesso IAM. As chaves de API são o método preferido para automação e Kubernetes clusters. Para obter mais informações, consulte Acesso a seus namespaces na automação.
Autenticação de acesso interativo
O comando ibmcloud usa tokens de atualização do IAM para acesso à sessão quando você está trabalhando interativamente com o registro. Você pode usar o comando ibmcloud cr login para configurar o acesso ao token de atualização com Docker, Podman e outros clientes. Para obter mais informações, consulte Acesso interativo a seus namespaces.

Todos os métodos de acesso exigem políticas de acesso IAM apropriadas. Para obter mais informações sobre a configuração de políticas de acesso, consulte Definição de políticas de acesso IAM.

Como obtenho credenciais de extração de imagens para {{site.data.keyword.registryshort}}?

Para credenciais de longa duração, você deseja uma chave de API associada a um ID de serviço ou ID de usuário que tenha permissão de leitor do IAM no namespace que contém a imagem. Uma chave de API do usuário está associada a um usuário e às suas políticas de acesso. Uma chave de API de identificação de serviço possui suas próprias políticas de acesso. É possível criar chaves de API de ID de serviço e chaves de API de usuário manualmente no console {{site.data.keyword.cloud_notm}} e na CLI. Para obter mais informações sobre chaves de API, consulte Entendendo as chaves de API.

Por motivos de segurança, a chave API está disponível apenas para ser copiada ou transferida por download no momento da criação. Se a chave API for perdida, uma nova chave API deverá ser criada.

É possível criar chaves de API de usuário e chaves de API de ID de serviço no console {{site.data.keyword.cloud_notm}}, na interface de linha de comando (CLI), na API e no Terraform. Para obter mais informações sobre a criação de chaves de API, consulte Gerenciamento de chaves de API de usuário e Gerenciamento de chaves de API de ID de serviço.

Para obter mais informações sobre como acessar {{site.data.keyword.registryshort}}, consulte Acessando {{site.data.keyword.registryshort}}.

Como faço para listar os nomes das imagens?

Para listar todas as imagens em sua conta {{site.data.keyword.cloud_notm}}, você pode executar o comando ibmcloud cr images, que exibe todas as imagens marcadas em sua conta {{site.data.keyword.cloud_notm}} com um resumo truncado. Se você quiser listar todas as suas imagens com o resumo completo, incluindo as imagens sem tags, execute o comando ibmcloud cr image-digests. O nome da imagem está no formato repository@digest ou repository:tag. Os valores de repositório, digest e tag são retornados quando você executa os comandos.

Para mais informações, consulte ibmcloud cr image-list e ibmcloud cr image-digests.

Como listar imagens públicas?

Para listar imagens públicas, execute os seguintes comandos ibmcloud para destinar o registro global e listar as imagens públicas que são fornecidas pelo {{site.data.keyword.IBM_notm}}:

  1. Defina a região como global (icr.io) executando o comando ibmcloud cr region-set e inserindo global como a região.
ibmcloud cr region-set global
  1. Liste as imagens públicas executando o comando ibmcloud cr images com a opção --include-ibm.
ibmcloud cr images --include-ibm

Por que as solicitações para {{site.data.keyword.registryshort}} estão atingindo o tempo limite enquanto estou usando a CLI do {{site.data.keyword.cloud_notm}}?

O problema de tempo limite quando você está usando a CLI do {{site.data.keyword.cloud_notm}} com {{site.data.keyword.registryshort}} pode ser devido ao fato de haver muitas imagens na conta. Para resolver essa situação, você pode usar o comando ibmcloud cr image-list com a opção --restrict para restringir o escopo da lista e melhorar o desempenho. Como alternativa, se os relatórios de vulnerabilidade não forem necessários, use o comando ibmcloud cr image-list com a opção --no-va. Para gerenciar o número de imagens, considere a possibilidade de limpar seus namespaces. Para obter mais informações, consulte Limpeza de seus namespaces em {{site.data.keyword.registryshort}}.

Se estiver seguindo as instruções de introdução, elas pressupõem que você esteja em sua própria conta com permissão para fazer tudo. Se você for membro de uma conta que pertence e é administrada por outra pessoa, talvez não tenha as permissões corretas para configurar e operar o serviço de registro. Peça ao administrador que o adicione a uma política de acesso existente ou crie uma política de acesso que lhe dê a função de acesso ao serviço correta para trabalhar com o site {{site.data.keyword.registryshort}}. Para obter mais informações, consulte Por que não consigo começar a usar o {{site.data.keyword.registryshort}}? para obter assistência.

Se os comandos do {{site.data.keyword.registryshort}} falharem com um erro informando que não estão registrados, instale o plug-in container-registry CLI. Além disso, verifique se o plug-in ibmcloud CLI e o plug-in container-registry CLI estão atualizados. Se quiser usar todos os comandos e opções disponíveis, você deverá manter suas CLIs atualizadas. Para verificar a versão atual de seus plug-ins da CLI, execute o comando ibmcloud plugin list. Consulte Por que ibmcloud cr não é um comando conhecido? para obter ajuda.

Como faço para adicionar várias tags a uma imagem de contêiner?

Para adicionar várias tags a uma imagem de contêiner, você pode usar o comando ibmcloud cr image-tag, mas precisa executar o comando para cada tag que deseja adicionar. Por exemplo, se sua imagem tiver o nome us.icr.io/birds/bluebird:1 e você quiser adicionar as tags latest e peck, deverá executar os seguintes comandos:

ibmcloud cr image-tag us.icr.io/birds/bluebird:1 us.icr.io/birds/bluebird:latest
ibmcloud cr image-tag us.icr.io/birds/bluebird:1 us.icr.io/birds/bluebird:peck

Depois que você executar esses comandos, a imagem terá três tags: 1, latest e peck.

Quais ferramentas eu posso usar para construir imagens e enviá-las por push?

Você pode usar ferramentas Docker e não Docker para construir imagens e enviá-las por push para o registro. Você pode usar ferramentas que não sejam do Docker, desde que sejam compatíveis com o formato e o protocolo de imagens de contêineres da OCI. Para efetuar o login usando outros clientes, consulte Acessando seus namespaces de forma interativa.

Como faço para fazer login em {{site.data.keyword.registryshort}} com Podman?

Para fazer login em {{site.data.keyword.registrylong_notm}} usando Podman, você pode usar o seguinte comando podman login DOMAIN_NAME -u iamapikey -p PASSWORD. Substitua DOMAIN_NAME pelo seu nome de domínio, por exemplo, icr.io, e substitua PASSWORD pela sua chave de API do IAM.

Se preferir não usar uma chave de API, você pode usar o seguinte comando para fazer login com um token de atualização de usuário ibmcloud cr login --client podman.

Para obter mais informações, consulte Uso do Podman para autenticar com o registro, Uso do Podman para autenticar com o registro usando perfis confiáveis e ibmcloud cr login.

As imagens na lixeira contam para minha cota?

As imagens que estão na lixeira não contam para sua cota.

Como faço para esvaziar a lixeira no {{site.data.keyword.registryshort_notm}}?

Não é possível excluir imagens da lixeira. As imagens ficam armazenadas na lixeira por 30 dias. Não será cobrado por nenhuma imagem que esteja na lixeira.

Você pode verificar quais imagens estão na lixeira executando o ibmcloud cr trash-list comando.

Como localizo a compilação de imagem?

Você pode localizar o formato longo da compilação de imagem executando um dos comandos a seguir. A compilação é exibida na coluna Compilação da CLI.

Ao usar o hash para identificar uma imagem, utilize sempre o formato longo.

Você pode executar um dos comandos a seguir para obter a forma longa do resumo da imagem:

  • Execute o comando ibmcloud cr image-digests:

    ibmcloud cr image-digests
    
  • Execute o comando ibmcloud cr image-list com a opção --no-trunc:

    ibmcloud cr image-list --no-trunc
    

    Se você executar o comando ibmcloud cr image-list sem a opção --no-trunc, será possível ver o formato truncado da compilação.

Como usar as compilações para trabalhar com as imagens?

A compilação identifica uma imagem usando o hash sha256 do manifest da imagem.

Para localizar as compilações para as suas imagens, execute o comando ibmcloud cr image-digests. Você pode se referir a uma imagem usando uma combinação do conteúdo da coluna Repositório (repository) e da coluna Compilação (digest) separadas por um símbolo de arroba (@) para criar o nome da imagem no formato repository@digest.

Por que não consigo enviar a imagem para {{site.data.keyword.registryshort}}?

Você pode ter problemas quando estiver extraindo ou enviando imagens para {{site.data.keyword.registryshort}} por vários motivos, como exceder o armazenamento de imagens ou a cota de tráfego de extração ou credenciais inválidas. Para resolver esse problema, faça login em {{site.data.keyword.cloud_notm}} e na CLI de {{site.data.keyword.registrylong_notm}}, analise os limites de cota e uso e considere a possibilidade de fazer upgrade para um plano padrão se estiver em um plano gratuito.

Consulte Por que não consigo enviar ou extrair uma imagem Docker quando uso {{site.data.keyword.registryshort}}? para obter assistência.

Como faço para listar imagens que têm mais de um ano?

LinuxmacOS Em Linux® e macOS,, se você quiser listar todas as imagens, marcadas e não marcadas, que foram criadas há mais de um ano, poderá executar o seguinte comando:

year=$(($(date +%s) - 31556952))
ibmcloud cr digests --format '{{ if (lt .Created '$year')}}{{.Repository}}:{{.Digest}}{{end}}'

Como usar o controle de acesso?

É possível criar políticas do {{site.data.keyword.IBM_notm}} {{site.data.keyword.iamshort}} (IAM) para controlar o acesso aos seus namespaces no {{site.data.keyword.registrylong_notm}}. Para obter mais informações, consulte o tutorial Concedendo acesso a recursos do {{site.data.keyword.registrylong_notm}} e Gerenciando o acesso do IAM para o {{site.data.keyword.registryshort_notm}}.

Como posso compartilhar o acesso a uma imagem?

Para acessar uma imagem, o usuário deve ser membro da conta {{site.data.keyword.cloud_notm}} que possui as imagens. Depois que o usuário é adicionado à conta, as políticas de IAM apropriadas devem ser criadas para atribuir acesso.

Para obter mais informações, consulte Definindo políticas de acesso do IAM.

Posso compartilhar um espaço de nome {{site.data.keyword.registryshort}} entre contas {{site.data.keyword.cloud_notm}}?

Não é possível compartilhar um espaço de nome {{site.data.keyword.registryshort}} (icr.io) entre contas {{site.data.keyword.cloud_notm}}. Um espaço de nome pertence a uma única conta {{site.data.keyword.cloud_notm}} e não pode ser compartilhado com várias contas.

Posso enviar imagens em uma conta diferente daquela que está executando o pipeline de compilação?

Você pode enviar imagens para {{site.data.keyword.registrylong_notm}} em uma conta {{site.data.keyword.cloud_notm}} diferente daquela que está executando o pipeline de compilação usando as etapas a seguir.

  1. Crie uma chave de API na conta de destino {{site.data.keyword.cloud_notm}} com as políticas de acesso necessárias para permitir o envio de imagens para o namespace necessário.
  2. Armazene a chave da API e o namespace de destino na configuração do pipeline de compilação.
  3. Modifique o script do pipeline de compilação para usar a chave da API e o namespace de destino quando estiver enviando imagens para {{site.data.keyword.registryshort}}. Essa ação faz com que seu pipeline de compilação se autentique e envie imagens para o namespace especificado na conta {{site.data.keyword.cloud_notm}} de destino.

Para obter mais informações, consulte Envio de imagens usando uma chave de API e Acesso {{site.data.keyword.registryshort}}.

Quais funções eu preciso ter para poder empurrar e puxar imagens?

Para extrair ou enviar uma imagem, você deve ter a função Writer ou Manager. Para obter mais informações, consulte Funções de acesso para uso {{site.data.keyword.registryshort_notm}}.

Eu tenho alguma imagem sem tag?

Para saber se você tem alguma imagem sem tag, liste suas imagens executando o comando ibmcloud cr image-digests. Imagens sem tags possuem um hífen (-) na coluna Tags.

Eu preciso de imagens sem tags?

Se você tiver contêineres ativos que estão executando imagens sem tags, é necessário reter as imagens sem tags. Se você excluir imagens sem tags que estão em uso, isto pode causar problemas com ajuste de escala ou reinicializações automatizadas. A exclusão de imagens sem tags pode causar um problema nas seguintes circunstâncias:

Como faço para verificar quais imagens não marcadas serão removidas pelo comando ibmcloud cr image-prune-untagged ?

Você não pode fazer uma execução seca do comando ibmcloud cr image-prune-untagged comando. No entanto, você pode visualizar todas as suas imagens marcadas e não marcadas executando o comando ibmcloud cr image-digests comando. Se quiser visualizar apenas as imagens não marcadas, você pode executar o comando ibmcloud cr image-digests com a formatação da linguagem Go, consulte Exemplo de comando de formatação Go para ibmcloud cr image-digests. Você pode então verificar se deseja remover essas imagens não marcadas antes de executar o comando ibmcloud cr image-prune-untagged.

Como faço para restaurar uma imagem que removi por acidente?

Se quiser restaurar uma imagem excluída, localize a imagem listando o conteúdo da lixeira com a execução do comando ibmcloud cr trash-list comando. Restaure a imagem selecionada executando o comando ibmcloud cr image-restore comando. As imagens ficam armazenadas na lixeira por 30 dias.

O que são imagens qualificadas?

Se você estiver limpando imagens usando políticas de retenção, somente as imagens qualificadas serão limpas. As imagens que sempre são retidas são Cloud Native Buildpacks e Google sem distribuição com a data de compilação definida como uma constante específica em vez do tempo real de compilação ou sem nenhum registro de data e hora de compilação e listas de manifesto. As imagens que são sempre mantidas não são elegíveis.

As imagens que não são elegíveis ainda são exibidas, mas não contam para o número total de imagens definido na política de retenção e não são removidas.

As imagens criadas antes de 2013-01-19T00:13:39Z são excluídas da avaliação da política de retenção.

Para obter mais informações, consulte Retenção de planejamento.

O que posso usar para assinar imagens em {{site.data.keyword.registryshort_notm}}?

{{site.data.keyword.registryshort_notm}} suporta imagens assinadas com assinaturas {{site.data.keyword.redhat_notm}} ou cosign. Você pode usar várias ferramentas, como Skopeo, Podman e a CLI {{site.data.keyword.redhat_openshift_notm}}, para criar assinaturas {{site.data.keyword.redhat_notm}} para suas imagens. É possível armazenar suas imagens assinadas para conteúdo confiável usando a API de extensão de assinaturas do {{site.data.keyword.redhat_notm}}, que conta com suporte do {{site.data.keyword.registrylong_notm}}. Para obter mais informações sobre a assinatura de imagens, consulte “Assinatura de imagens para conteúdo confiável” em {{site.data.keyword.registryshort_notm}}.

Em que região estou?

Para determinar a região que está usando no momento, você pode usar o comando ibmcloud cr region na CLI. Este comando exibe a região em questão e o registro. Como alternativa, você também pode verificar o console onde a instância está implantada para descobrir a região. Para obter mais informações, consulte Regiões.

Quais regiões estão disponíveis?

Para saber mais sobre as regiões que estão disponíveis para {{site.data.keyword.registrylong_notm}}, consulte Regiões.

Como faço para alterar a região ou o registro?

Para alterar a região e o registro, é necessário fazer login em {{site.data.keyword.cloud_notm}} e usar o comando ibmcloud cr region-set REGION onde REGION é o nome da região que você deseja usar, por exemplo, global, au-syd e jp-tok. Esse comando define o plug-in container-registry CLI como alvo do registro regional especificado.

Por exemplo, para alterar o registro para uk.icr.io, que está na região eu-gb, conclua as etapas a seguir.

  1. Faça login no {{site.data.keyword.cloud_notm}} usando o comando a seguir.
ibmcloud login
  1. Execute o comando ibmcloud cr region-set para definir a região e o registro, digitando eu-gb como a região:
ibmcloud cr region-set eu-gb

Também é possível usar o nome do registro (por exemplo, uk.icr.io) ou o nome anterior da região (por exemplo, uk-south em vez de eu-gb).

Você obtém a seguinte resposta:

The region is set to 'uk-south', the registry is 'uk.icr.io'.

Para saber mais sobre as regiões que estão disponíveis para {{site.data.keyword.registrylong_notm}}, consulte Regiões.

Como faço para que o comando docker pull retorne a versão mais recente?

Para localizar a imagem mais recente, execute o comando ibmcloud cr image-list em vez do comando docker pull. Para facilitar a localização da imagem mais recente, defina sempre uma tag sequencial diferente para suas imagens e não confie na tag latest.

Consulte Por que não consigo extrair a imagem mais recente usando a tag latest em {{site.data.keyword.registryshort}}? para obter ajuda.

Por que meus pods falham com um erro ImagePullBackOff ?

É provável que o erro seja causado por uma das seguintes situações:

  • Seu cluster utiliza uma chave de API armazenada em um segredo de download de imagens para autorizar o cluster a baixar imagens de {{site.data.keyword.registrylong_notm}}.
  • A imagem com a tag específica não existe no repositório.

Para corrigir o erro, verifique as possíveis causas a seguir.

  • Verifique se você está usando o nome e a tag corretos para a imagem.
  • Verifique se as cotas de tráfego de extração e de armazenamento são grandes o suficiente.
  • Verifique se você tem um segredo de extração de imagem em seu namespace.

Para obter mais informações, consulte Por que as imagens não conseguem ser extraídas do registro com ImagePullBackOff ou erros de autorização?

Por que estou recebendo um erro de cota excedida?

Você excedeu a cota de armazenamento de imagens ou de tráfego de extração da sua conta para o mês atual. Para resolver esse problema, você pode revisar seus limites de cota e aumentá-los conforme necessário ou, se estiver no plano Lite, fazer upgrade para o plano padrão.

Para obter mais informações, consulte Por que estou recebendo erros sobre minha cota em {{site.data.keyword.registryshort}}? e Como manter-se dentro dos limites da cota.

Como excluir o {{site.data.keyword.registrylong_notm}}?

Se não quiser mais usar o {{site.data.keyword.registryshort_notm}}, você poderá excluí-lo desinstalando o plug-in container-registry CLI. Para obter mais informações, consulte Desinstalação do plug-in container-registry CLI.