Suspensões de uso de recursos

Os seguintes avisos de suspensão de uso afetam o Container Registry. Consulte também os avisos de suspensão de uso do Docker e o changelog.

Clientes da API Docker Registry v1 e do Docker com versões anteriores à 1.6

Em 14 de dezembro de 2016, anunciamos que, a partir de 28 de fevereiro de 2017, com o lançamento do Docker v1.13, o Docker Engine não seria mais compatível com o protocolo v1.

Como resultado, o Container Registry deixou de ser compatível com os clientes do Docker em versões anteriores à 1.6. Desde 28 de fevereiro de 2017, os clientes do Docker com versão anterior à 1.6 não conseguem se comunicar com a Container Registry API. Além disso, todas as imagens de contêiner em protocolo v1 armazenadas no Container Registry não são mais acessíveis.

Para ver se essa mudança afeta suas imagens, siga estas etapas:

  1. Para verificar a versão do cliente do Docker que você está usando, execute o seguinte comando:

      gcloud docker -- --version
    

    Se a versão do seu cliente for anterior à versão 1.6, atualize o cliente do Docker. Em seguida, atualize suas imagens para o protocolo Docker Registry v2.

  2. Extraia uma imagem em v1 afetada:

      gcloud docker -- pull gcr.io/[PROJECT-ID]/[IMAGE]
    
  3. Envie a imagem novamente:

      gcloud docker -- push gcr.io/[PROJECT-ID]/[IMAGE]
    

Para saber mais informações sobre os protocolos v1 e v2 do Docker Registry, consulte Formatos de imagem de contêiner.

buckets do Container Registry diferentes do padrão

Em 28 de fevereiro de 2017, o uso de registros do tipo "defina seu próprio intervalo", como b.gcr.io e bucket.gcr.io, foi descontinuado. O Container Registry já não acessa mais as imagens de contêiner hospedadas nesses tipos de intervalo.

Para continuar usando suas imagens, mova-as para um local padrão do Container Registry, como gcr.io, us.gcr.io, asia.gcr.io ou eu.gcr.io.

Para migrar imagens de contêiner para um local padrão, execute estas etapas:

  1. Extraia as imagens do bucket diferente do padrão:

    gcloud docker -- pull b.gcr.io/[BUCKET-NAME]/[IMAGE]:[TAG]
    
  2. Marque novamente as imagens com nome de local de registro padrão:

    gcloud docker -- tag b.gcr.io/[BUCKET-NAME]/[IMAGE]:[TAG] [HOSTNAME]/[PROJECT-ID]/[IMAGE]:[TAG]
    
  3. Reenvie a imagem para o Container Registry usando o cliente do Docker versão 1.6 ou posterior, aplicando o código do projeto de destino:

    gcloud docker -- push [HOSTNAME]/[PROJECT-ID]/[IMAGE]:[TAG]
    

Alteração no armazenamento de metadados de imagem de contêiner

Desde 28 de fevereiro de 2017, o Container Registry alterou o local de armazenamento dos arquivos de metadados de imagens de contêineres. Os metadados de imagem se referem a informações, como nomes, marcadores e manifestos de imagem, que identificam os arquivos de camadas (por resumo) que compõem uma imagem.

Essa alteração pode afetá-lo se você acessa ou manipula os arquivos de metadados diretamente no bucket do Cloud Storage, usando, por exemplo, os recursos de histórico de alterações ou o gerenciamento do ciclo de vida de objetos para exclusão.

Anteriormente, ao enviar uma imagem para o Container Registry, a Container Registry API armazenava os arquivos de metadados e camadas da imagem enviada em um bucket do Cloud Storage no projeto. Desde 28 de fevereiro de 2017, o Container Registry passou a armazenar os metadados de imagens em um banco de dados de back-end de alto desempenho para melhorar a execução e a funcionalidade. Os arquivos de camadas das imagens ainda são armazenados no Cloud Storage.

Uma conta de serviço do Container Registry foi adicionada automaticamente ao seu projeto com um nome semelhante a [PROJECT-NUMBER]@containerregistry.iam.gserviceaccount.com. Essa conta de serviço ativou a nova Container Registry API e gerenciou a migração. Não exclua ou faça downgrade dessa conta de serviço nem desative a API Container Registry.

Comando gcloud docker e clientes do Docker de versões posteriores à 18.03

A partir de 3 de abril de 2018, gcloud docker não é compatível com as versões de cliente do Docker acima de 18.03.

Para autenticar solicitações ao Container Registry em versões do cliente acima da 18.03, use o gcloud como um auxiliar de credencial do Docker. Para isso, execute o seguinte comando:

gcloud auth configure-docker

Como alternativa, use um dos outros métodos avançados de autenticação.