Uma conexão bem-sucedida a um registro ECR privado não conclui o pull da imagem. O ECR fornece o manifesto, enquanto o Amazon S3 armazena as camadas da imagem. Um contorno que cobre apenas o registro pode, portanto, deixar o download das camadas seguir outro caminho.

Para acesso privado por endpoints de VPC, verifique os dois caminhos:

  • O endpoint de interface do ECR e sua configuração de DNS privado.
  • O endpoint do S3, as tabelas de rotas associadas e a política que permite acesso ao bucket de camadas do ECR.

Depois, coloque os nomes de contorno relevantes no processo que faz o pull. Para um Docker Engine nativo com configuração de proxy existente no daemon.json, uma configuração ilustrativa para us-east-2 é:

{
  "proxies": {
    "http-proxy": "http://proxy.example:8080",
    "https-proxy": "http://proxy.example:8080",
    "no-proxy": "123456789012.dkr.ecr.us-east-2.amazonaws.com,prod-us-east-2-starport-layer-bucket.s3.us-east-2.amazonaws.com"
  }
}

Combine as entradas pretendidas com as demais configurações do daemon e a lista de contorno existente. Se outros downloads de registros públicos puderem usar um intermediário público, a lista de proxies HTTP fornece candidatos para URLs de proxy sem conta; preserve os contornos do ECR privado e do S3. Substitua a conta, a região e o hostname de download de camadas pelos nomes realmente usados pelo pull. As formas de nomeação do S3 e as configurações de endpoint podem variar; este exemplo não é uma lista exaustiva de endpoints da AWS. Aplicar a configuração do daemon exige a reinicialização pretendida do daemon. O Docker Desktop usa as próprias configurações de proxy.

Um contorno escolhe uma rota direta. Ele não cria um endpoint do S3 ausente, não anexa uma tabela de rotas, não concede acesso ao bucket nem corrige o DNS privado. Confirme essas dependências antes de estender o contorno a domínios amplos da AWS.

As configurações de proxy do contêiner no cliente Docker não configuram os downloads de imagens do daemon. Da mesma forma, um comando da AWS CLI que obtém credenciais de login do ECR tem sua própria configuração de proxy; inclua o destino da API se essa solicitação separada também precisar de acesso privado.

Artigos relacionados