Perguntas frequentes sobre o Amazon Elastic Container Registry

Geral

O Amazon ECR é um registro de contêiner totalmente gerenciado que facilita o armazenamento, o gerenciamento e a implantação de imagens de contêineres pelos desenvolvedores. O Amazon ECR é integrado ao Amazon Elastic Container Service (Amazon ECS), ao Amazon Elastic Kubernetes Service (Amazon EKS) e ao AWS Lambda, simplificando seu desenvolvimento para o fluxo de trabalho de produção. O Amazon ECR elimina a necessidade de operar os seus próprios repositórios de contêiner ou de preocupar-se sobre a escalabilidade da infraestrutura subjacente. O Amazon ECR hospeda suas imagens em uma arquitetura altamente disponível e escalável, o que permite que você implante de forma confiável contêineres para aplicações. A integração com o AWS Identity and Access Management (IAM) fornece controle em nível de recurso de cada repositório, o que permite compartilhar imagens na organização ou com qualquer pessoa no mundo.

O Amazon ECR elimina a necessidade de operar e escalar a infraestrutura exigida para ativar o seu registro do contêiner. O Amazon ECR utiliza o Amazon Simple Storage Service (S3) para armazenamento para tornar suas imagens de contêiner altamente disponíveis e acessíveis, permitindo que você implante com confiança novos contêineres para suas aplicações. O Amazon ECR transfere suas imagens de contêiner pelo HTTPS e criptografa automaticamente suas imagens inativas. Você pode configurar políticas para gerenciar permissões para cada repositório e restringir acesso aos usuários do IAM, funções ou outras contas da AWS. O Amazon ECR integra-se ao Amazon ECS, ao Amazon EKS, ao AWS Fargate, ao AWS Lambda e ao Docker CLI, permitindo que você simplifique seus fluxos de trabalho de desenvolvimento e produção. Você pode enviar facilmente suas imagens de contêiner ao Amazon ECR usando o Docker CLI a partir da sua máquina de desenvolvimento, e os orquestradores ou processadores de contêiner da Amazon podem extraí-las diretamente para implantações em produção.

Com o Amazon ECR, não há taxas iniciais ou compromissos. Você paga apenas pela quantidade de dados armazenados nos seus repositórios públicos e privados e pelos dados transferidos para a Internet. Consulte nossa página de Preços para obter mais detalhes.

O Amazon ECR é um serviço regional e foi desenvolvido para oferecer a você a flexibilidade na forma como as imagens são implantadas. Você pode efetuar push/pull de imagens para a mesma região da AWS em que seu cluster de Docker é executado para obter a melhor performance. Você também pode acessar o Amazon ECR em qualquer lugar que o Docker seja executado, como desktops e ambientes on-premises. Efetuar pull de imagens entre regiões ou para fora da Internet terá latência adicional e custos de transferência de dados.

Sim. O Amazon ECR tem um registro de contêiner altamente disponível e um site que facilita o compartilhamento ou a pesquisa de softwares de contêiner públicos. Qualquer pessoa com ou sem uma conta da AWS pode usar a galeria pública do Amazon ECR para pesquisar e fazer download de imagens de contêineres comumente usadas, como sistemas operacionais, imagens publicadas pela AWS e arquivos como charts do Helm para o Kubernetes.

Um repositório privado não oferece recursos de pesquisa de conteúdo e requer autenticação baseada no Amazon IAM usando credenciais de conta da AWS antes de permitir que as imagens sejam extraídas. Um repositório público tem conteúdo descritivo e permite que qualquer pessoa em qualquer lugar efetue pull de imagens sem precisar de uma conta da AWS ou usar credenciais do IAM. Imagens de repositório público também estão disponíveis na galeria pública do Amazon ECR.
 

Você pode usar o AWS CloudTrail no Amazon ECR para fornecer um histórico de todas as ações de API, como, por exemplo, quem carregou uma imagem e quando os indicadores foram movidos entre imagens. Os administradores também pode encontrar quais instâncias do EC2 transferiram quais imagens.

Como usar o Amazon ECR

A melhor maneira de começar a usar o Amazon ECR é usando a CLI do Docker para efetuar push e pull de sua primeira imagem. Visite nossa página Conceitos básicos para obter mais informações.

Sim. Você pode configurar endpoints do AWS PrivateLink para permitir que suas instâncias efetuem pull de imagens de seus repositórios privados sem percorrer a Internet pública.

O Amazon ECR fornece uma interface de linha de comando e APIs para criar, monitorar e excluir repositórios e definir permissões de repositório. Você pode executar as mesmas ações no console do Amazon ECR, que pode ser acessado por meio da seção “Repositories” (Repositórios) do console do Amazon ECR. O Amazon ECR também se integra com a CLI do Docker, permitindo que você efetue push e pull e etiquete as imagens na sua máquina de desenvolvimento.

Você publica uma imagem na galeria pública do Amazon ECR fazendo login na sua conta da AWS e efetuando push para um repositório público criado por você. Você recebe um alias exclusivo por conta para usar em URLs de imagem que identifica todas as imagens públicas que você publica.

Sim. Você pode solicitar um alias personalizado, como o nome da organização ou do projeto, a menos que seja um alias reservado. Os nomes que identificam os serviços da AWS são reservados. Os nomes que identificam os vendedores do AWS Marketplace também podem ser reservados. Analisaremos e aprovaremos sua solicitação de alias personalizada em alguns dias, a menos que ela viole a Política de uso aceitável da AWS ou outras políticas da AWS.

Para efetuar pull, use o conhecido comando “docker pull” com a URL da imagem. Você pode procurar facilmente essa URL localizando imagens com um alias de editor, nome de imagem ou descrição da imagem usando a galeria pública do Amazon ECR. URLs de imagem estão no formato public.ecr.aws/<alias>/<image>:<tag>, por examplo public.ecr.aws/eks/aws-alb-ingress-controller:v1.1.5

Sim. O Amazon ECR foi desenvolvido para oferecer a você a flexibilidade onde armazenar e como implantar suas imagens. Você pode criar pipelines de implantação que criam imagens, efetuar push para o Amazon ECR em uma região, e o Amazon ECR pode replicá-los automaticamente em outras regiões e contas para implantação em clusters multirregionais.

Sim. Você pode acessar o Amazon ECR em qualquer lugar que o Docker seja executado, como desktops e ambientes locais.

Sim. Serviços como o Amazon EKS, Amazon SageMaker e AWS Lambda publicam suas imagens oficiais de contêiner de uso público e artefatos no Amazon ECR.  

Sim. O Amazon ECR é integrado ao Amazon ECS, o que permite que você armazene, execute e gerencie facilmente imagens de contêiner para aplicações em execução no Amazon ECS. Basta especificar o repositório do Amazon ECR na sua definição de tarefas que o Amazon ECS recuperará as imagens apropriadas para as suas aplicações.

Sim. O AWS Elastic Beanstalk é compatível com o Amazon ECR para ambientes de docker de contêiner único e vários contêineres, o que permite implantar facilmente imagens de contêiner armazenadas no Amazon ECR com o AWS Elastic Beanstalk. Tudo o que você precisa fazer é especificar o repositório do Amazon ECR na sua configuração do Dockerrun.aws.json e conectar a política AmazonEC2ContainerRegistryReadOnly à sua função de instância de contêiner.

O Amazon ECR suporta, no momento, o Docker Engine 1.7.0 e posteriores.

O Amazon ECR suporta a especificação de API do Docker Registry V2.

Não, no entanto, o Amazon ECR integra-se com várias soluções populares de CI/CD para fornecer esse recurso. Consulte a página Parceiros do Amazon ECR para obter mais informações.

Sim. O Amazon ECR está integrado ao AWS Identity and Access Management (IAM), que suporta a federação de identidades para acesso delegado para o Console de Gerenciamento da AWS ou as APIs da AWS.

O Amazon ECR é compatível com o formato Docker Image Manifest V2, Schema 2. Para manter a retrocompatibilidade com imagens do Schema 1, o Amazon ECR continuará a aceitar imagens carregadas no formato Schema 1. Além disso, o Amazon ECR pode reconverter uma imagem do Schema 2 para o Schema 1 ao extraí-la usando uma versão mais antiga do Docker Engine (versão 1.9 e outras inferiores).

Sim. O Amazon ECR é compatível com a especificação de imagem Open Container Initiative (OCI), o que permite enviar e extrair imagens e artefatos do tipo OCI. O Amazon ECR também pode fazer a conversão entre imagens do Docker Image Manifest V2, Schema 2 e imagens do tipo OCI durante a extração.

Segurança

O Amazon ECR criptografa automaticamente imagens em repouso usando criptografia no lado do servidor do Amazon S3 ou criptografia do AWS KMS e transfere suas imagens de contêiner por HTTPS. Você pode configurar políticas para gerenciar permissões e controlar o acesso às suas imagens utilizando usuários e funções do AWS Identity and Access Management (IAM) sem precisar gerenciar credenciais diretamente nas suas instâncias do EC2.

Você pode usar as políticas de recursos do IAM para controlar e monitorar quem e o que (por exemplo, instâncias do EC2) pode acessar suas imagens no contêiner, e também como, quando e onde eles podem conseguir acessá-las. Para começar a usar, use o Console de Gerenciamento da AWS para criar políticas baseadas em recursos para seus repositórios. Alternativamente, você pode usar políticas de exemplo e anexá-las aos seus repositórios através da CLI do Amazon ECR.

Sim. Aqui está um exemplo de como criar e configurar uma política para compartilhamento de imagens entre contas.

Você pode habilitar o Amazon ECR pode verificar automaticamente a presença de uma ampla gama de vulnerabilidades do sistema operacional em suas imagens de contêiner. Também é possível verificar imagens usando um comando de API e o Amazon ECR notificará que uma verificação foi concluída tanto na API como no console. Para realizar verificações aprimoradas de imagens, ative o Amazon Inspector.