As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Automatizar a limpeza de imagens usando políticas de ciclo de vida no Amazon ECR
As políticas de ciclo de vida do Amazon ECR fornecem mais controle sobre o gerenciamento de ciclo de vida de imagens em um repositório privado. Uma política de ciclo de vida contém uma ou mais regras, e cada regra define uma ação do Amazon ECR. Com base nos critérios de expiração da política de ciclo de vida, as imagens expiram com base na idade ou na contagem em 24 horas. Quando o Amazon ECR executa uma ação com base em uma política de ciclo de vida, ela é capturada como um evento no AWS CloudTrail. Para ter mais informações, consulte Registrando ECR ações da Amazon com AWS CloudTrail.
Como funcionam as políticas de ciclo
Uma política de ciclo de vida consiste em uma ou mais regras que determinam quais imagens em um repositório devem perder a validade. Ao considerar o uso de políticas de ciclo de vida, é importante usar a visualização da política de ciclo de vida para confirmar de quais imagens a política de ciclo de vida expira a validade antes de aplicá-la a um repositório. Depois que uma política de ciclo de vida é aplicada a um repositório, você deve esperar que as imagens expirem dentro de 24 horas após atenderem aos critérios de expiração. Quando o Amazon ECR executa uma ação com base em uma política de ciclo de vida, ela é capturada como um evento no AWS CloudTrail. Para ter mais informações, consulte Registrando ECR ações da Amazon com AWS CloudTrail.
O diagrama a seguir mostra um fluxo de trabalho da política de ciclo de vida.
-
Crie uma ou mais regras de teste.
-
Salve as regras de teste e execute a visualização.
-
O avaliador de políticas de ciclo de vida percorre todas as regras e marca as imagens que cada regra afeta.
-
Em seguida, o avaliador de políticas de ciclo de vida aplica as regras, com base na prioridade da regra, e exibe quais imagens no repositório estão definidas para expirar a validade.
-
Revise os resultados do teste, certificando-se de que as imagens marcadas para expirar a validade são as que você pretendia.
-
Aplique as regras de teste como política de ciclo de vida para o repositório.
-
Depois que a política de ciclo de vida é criada, você deve esperar que as imagens expirem dentro de 24 horas após atenderem aos critérios de expiração.
Regras de avaliação de política de ciclo de vida
O avaliador da política de ciclo de vida é responsável por analisar o JSON de texto simples da política de ciclo de vida, avaliando todas as regras e aplicando essas regras com base na prioridade da regra às imagens no repositório. A seguir encontra-se a explicação mais detalhada da lógica do avaliador de políticas de ciclo de vida. Para ver exemplos, consulte Exemplos de políticas de ciclo de vida no Amazon ECR.
-
Todas as regras são avaliadas ao mesmo tempo, independentemente da prioridade da regra. Depois que todas as regras são avaliadas, elas são aplicadas com base na prioridade da regra.
-
Uma imagem é expirada por exatamente uma ou nenhuma regra.
-
Uma imagem que corresponde aos requisitos de marcação de uma regra não pode ser expirada por uma regra com uma prioridade inferior.
-
As regras nunca podem marcar imagens marcadas por regras de maior prioridade, mas ainda podem identificá-las como se não tivessem expirado.
-
O conjunto de regras deve conter um conjunto exclusivo de prefixos de tags.
-
Somente uma regra é permitida para selecionar imagens não marcadas.
-
Se uma imagem for referenciada por uma lista de manifestos, ela não poderá expirar sem que a lista de manifestos seja excluída primeiro.
-
A expiração é sempre solicitada por
pushed_at_time
e expira sempre as imagens mais antigas antes das mais novas. -
Uma regra de política de ciclo de vida pode especificar um
tagPatternList
outagPrefixList
, mas não ambos. Porém, uma política de ciclo de vida pode conter várias regras em que regras diferentes usam listas de padrões e prefixos. Uma imagem será correspondida com êxito se todas as tags no valortagPatternList
outagPrefixList
corresponderem a qualquer tag da imagem. -
Os parâmetros
tagPatternList
outagPrefixList
apenas poderão ser usados se otagStatus
fortagged
. -
Ao usar
tagPatternList
, uma imagem será correspondida com êxito se corresponder ao filtro de curinga. Por exemplo, se um filtro deprod*
for aplicado, ele corresponderá às tags de imagem cujo nome comece comprod
, comoprod
,prod1
ouproduction-team1
. Da mesma maneira, se um filtro de*prod*
for aplicado, ele corresponderá às tags de imagem cujo nome contenhaprod
, comorepo-production
ouprod-team
.Importante
Existe um limite máximo de quatro curingas (
*
) por string. Por exemplo,["*test*1*2*3", "test*1*2*3*"]
é válido, mas["test*1*2*3*4*5*6"]
é inválido. -
Ao usar
tagPrefixList
, uma imagem será correspondida com êxito se todos os filtros de curinga no valortagPrefixList
corresponderem a qualquer tag da imagem. -
O parâmetro
countUnit
só será usado secountType
forsinceImagePushed
. -
Com
countType = imageCountMoreThan
, as imagens são classificadas das mais novas para as mais antigas com base empushed_at_time
e, em seguida, todas as imagens acima da contagem especificada são expiradas. -
Com
countType = sinceImagePushed
, todas as imagens que tiverem o valor depushed_at_time
mais antigo do que o número de dias especificado com base emcountNumber
serão expiradas.