AWS ECR 비용 절감

AWS ECR 비용 절감을 해야하는 이유

AWS ECR은 Docker 이미지 저장소로 사용되는 서비스입니다.
ECR은 Docker 이미지를 저장하고 배포하는데 사용되며, 사용량에 따라 비용이 발생합니다.
컨테이너 이미지 하나당 최소 수십MB에서 GB 단위로 용량을 차지하게 되는데, 이러한 이미지들이 쌓이게 되면 비용이 증가하게 됩니다.
매달 1GB당 0.1달러로 이미지 생성시마다 저장하고 누적으로 쌓이게되면 비용이 증가하게 됩니다.

AWS ECR을 막 사용하는 예시


사실 도커를 이용하면 가장 최신의 이미지 또는 최근 몇 개의 이미지만 필요하고 과거의 이미지는 필요하지 않습니다.
ECR은 용량에 비례하여 청구되기 때문에 필요없는 과거 이미지를 삭제하면 비용을 절감할 수 있습니다.
매번 삭제를 해야 하는데 며칠만 안 하면 이런 수십 개의 이미지가 누적됩니다….

AWS ECR 이미지 자동 삭제 방법


AWS는 lifecycle policy를 통해 이미지를 자동으로 삭제할 수 있습니다.

규칙생성을 하여 이미지를 삭제 할 조건을 설정합니다.

제 경우 dockerX로 multi stage image를 빌드하여 한 번에 생성되는 이미지가 7개가 생성되는데, 최신 이미지 7개만 유지하고 나머지는 자동 삭제되는 규칙생성하였습니다.

테스트 실행으로 규칙이 정상적으로 작동하는지 확인합니다.

테스트 결과 49개의 이미지 중 42개가 일치하는 이미지로 원하는 결과가 나왔습니다.

생성한 규칙을 선택 후 수명 주기 방식으로 적용을 클릭하여 규칙을 적용합니다.

위와 같이 적용 완료가 되면 규칙이 적용된 것입니다.

적용 완료 후 바로 적용이 아니라 일정 시간이 지나야 규칙이 적용되므로 추후 확인이 필요합니다.

마무리

  • AWS를 사용하다보면 생각지도 못 한 곳에서 비용이 발생 할 수 있습니다.
  • 회사에선 비용을 줄이는 것도 개발의 한 부분이라 생각됩니다.
  • 매번 반복되는 작업은 자동화하여 비용과 시간을 절약하고 더 나은 개발자가 됩시다!
공유하기