Amazon ECR의 수명 주기 정책을 사용하여 이미지 정리를 자동화합니다. - Amazon ECR

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon ECR의 수명 주기 정책을 사용하여 이미지 정리를 자동화합니다.

Amazon ECR 수명 주기 정책은 프라이빗 리포지토리의 이미지에 대한 수명 주기 관리를 보다 효과적으로 제어할 수 있도록 합니다. 수명 주기 정책에는 하나 이상의 규칙이 포함되며, 각 규칙은 Amazon ECR에 대한 작업을 정의합니다. 수명 주기 정책의 만료 기준에 따라 이미지는 연령 또는 개수를 기준으로 24시간 이내에 만료됩니다. Amazon ECR이 수명 주기 정책을 기반으로 작업을 수행하는 경우 이 작업은 에서 AWS CloudTrail이벤트로 캡처됩니다. 자세한 정보는 를 사용하여 Amazon ECR 작업 로깅 AWS CloudTrail을 참조하세요.

수명 주기 정책의 작동 방식

수명 주기 정책은 리포지토리에서 만료되어야 하는 이미지를 결정하는 하나 이상의 규칙으로 구성됩니다. 수명 주기 정책의 사용을 고려할 때는 수명 주기 정책 미리 보기를 사용하여 수명 주기 정책을 리포지토리에 적용하기 전에 정책이 만료시키는 이미지를 확인하는 것이 중요합니다. 리포지토리에 수명 주기 정책을 적용하면, 해당 이미지는 만료 기준에 부합한 뒤 24시간 이내에 만료될 것으로 예상해야 합니다. Amazon ECR이 수명 주기 정책에 따라 작업을 수행할 때 이 작업은 AWS CloudTrail의 이벤트로 캡처됩니다. 자세한 정보는 를 사용하여 Amazon ECR 작업 로깅 AWS CloudTrail을 참조하세요.

다음 다이어그램은 수명 주기 정책 워크플로를 보여줍니다.

수명 주기 정책을 평가하고 적용하는 프로세스를 보여주는 다이어그램입니다.
  1. 하나 이상의 테스트 규칙을 생성합니다.

  2. 테스트 규칙을 저장하고 미리 보기를 실행합니다.

  3. 수명 주기 정책 평가자는 모든 규칙을 살펴보고 각 규칙이 영향을 주는 이미지를 표시합니다.

  4. 그런 다음 수명 주기 정책 평가기는 규칙 우선 순위에 따라 규칙을 적용하고 리포지토리에서 만료되도록 설정된 이미지를 표시합니다.

  5. 테스트 결과를 검토하여 만료될 것으로 표시된 이미지가 의도한 이미지인지 확인합니다.

  6. 리포지토리에 대한 수명 주기 정책으로 테스트 규칙을 적용합니다.

  7. 수명 주기 정책을 생성하면, 이미지가 만료 기준에 부합한 뒤 24시간 이내에 만료될 것으로 예상해야 합니다.

수명 주기 정책 평가 규칙

수명 주기 정책 평가자는 수명 주기 정책의 평문 JSON의 구문을 분석하여 모든 규칙을 평가한 다음 규칙 우선 순위에 따라 이러한 규칙을 리포지토리 내의 이미지에 적용할 책임이 있습니다. 다음은 수명 주기 정책 평가자의 논리에 대해 자세히 설명합니다. 예를 보려면 Amazon ECR의 수명 주기 정책 예제을 참조하세요.

  • 규칙 우선 순위에 관계없이 모든 규칙이 동시에 평가됩니다. 모든 규칙이 평가되면 규칙 우선 순위에 따라 규칙이 적용됩니다.

  • 정확히 한 개 또는 제로 규칙에 의해 이미지가 만료됩니다.

  • 규칙의 태그 지정 요건에 일치하는 이미지는 이보다 우선순위가 낮은 규칙에 의해 만료되지 않습니다.

  • 규칙은 우선순위가 더 높은 규칙으로 표시된 이미지에 표시할 수 없으나, 만료되지 않은 것처럼 식별할 수는 있습니다.

  • 규칙 집합에는 고유한 태그 접두사 집합이 포함되어야 합니다.

  • 오직 한 개의 규칙만 태그되지 않은 이미지를 선택할 수 있습니다.

  • 매니페스트 목록에서 이미지를 참조하는 경우 이미지가 만료되려면 먼저 매니페스트 목록을 삭제해야 합니다.

  • 만료는 항상 pushed_at_time이 명령하며, 항상 새 이미지보다 오래된 이미지가 먼저 만료합니다.

  • 수명 주기 정책 규칙은 tagPatternList 또는 tagPrefixList 중 하나를 지정할 수 있지만 둘 다 지정할 수는 없습니다. 하지만 수명 주기 정책에는 여러 규칙이 포함될 수 있으며 다양한 규칙에서 패턴과 접두사 목록을 모두 사용합니다.

  • tagStatus이(가) tagged인 경우 tagPatternList 또는 tagPrefixList 매개변수만 사용할 수 있습니다.

  • tagPatternList을(를) 사용할 때 이미지가 와일드카드 필터와 일치하면 이미지가 성공적으로 일치하는 것입니다. 예를 들어, prod* 필터를 적용하면 이름이 prod, prod1 또는 production-team1와(과) 같은 prod(으)로 시작하는 리포지토리와 일치하게 됩니다. 마찬가지로 *prod* 필터를 적용하면 이름에 repo-production 또는 prod-team와(과) 같은 prod이(가) 포함된 리포지토리와 일치하게 됩니다.

    중요

    문자열당 와일드카드(*) 는 최대 4개로 제한됩니다. 예를 들어, ["*test*1*2*3", "test*1*2*3*"]은(는) 유효하지만 ["test*1*2*3*4*5*6"]은(는) 유효하지 않습니다.

  • tagPrefixList 사용 시 tagPrefixList 값의 모든 태그가 이미지의 태그와 일치하는 경우, 이미지가 성공적으로 일치합니다.

  • countUnit 파라미터는 countTypesinceImagePushed인 경우에만 사용합니다.

  • countType = imageCountMoreThan에서는 pushed_at_time을 바탕으로 새 것부터 오래된 것으로 이미지를 분류한 다음 지정 카운트보다 큰 모든 이미지가 만료됩니다.

  • countType = sinceImagePushed에서는 pushed_at_timecountNumber를 바탕으로 지정 날짜 수보다 오래된 모든 이미지가 만료됩니다.