Kubernetes

Distroless image

라온클 2024. 2. 17. 06:19

<개념 한줄 요약>

Distroless 이미지는 Kubernetes 워크로드를 위해 애플리케이션과 런타임 의존성만을 포함하는 최소화된 컨테이너 이미지입니다.

 

도커 이미지계 미니멀리즘

도둑: 들어와도 뭘 할 수 있는게 없네..



<특징>

 

Shell이 없으므로 ENTRYPOINT 명령어로 

있는 것 없는 것
애플리케이션에 필요한 최소한의 Binary code (표준 Linux 배포판에 있지만 애플리케이션에는 불필요한) 패키지 관리자
직접적인 종속성(라이브러리, 모듈) Shell, 기타 프로그램
(필요한 경우)최소한의 런타임  




<Kubernetes의 워크로드 속에서 가지는 의미>

불필요한 구성 요소를 최소화하여 공격자의 악용 가능성을 크게  줄인다.

 

 

 

“런타임 컨테이너의 내용을 앱에 꼭 필요한 내용으로 제한하는 것은 수년 동안 프로덕션에서 컨테이너를 사용해 온 Google 및 기타 기술 대기업이 채택한 모범 사례입니다. 이는 스캐너(예: CVE)의 신호 대 잡음비를 개선하고 필요한 항목에 대한 출처를 설정해야 하는 부담을 줄여줍니다.”

-https://github.com/GoogleContainerTools/distroless?tab=readme-ov-file 




<참고 링크>

GoogleContainerTools

https://github.com/GoogleContainerTools/distroless 

 

Distroless: Using Minimal Container Image for Kubernetes Workload

https://8grams.medium.com/distroless-using-minimal-container-image-for-kubernetes-workload-9b143f83bd10 

 

Distroless Docker: Containerizing Apps, not VMs

https://www.youtube.com/watch?v=lviLZFciDv4 

 

Distroless 베이스 이미지를 활용해 초경량 이미지 빌드하기

https://velog.io/@c17an/Distroless-%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%9D%B4%EB%AF%B8%EC%A7%80%EB%A5%BC-%ED%99%9C%EC%9A%A9%ED%95%B4-%EC%B4%88%EA%B2%BD%EB%9F%89-%EC%9D%B4%EB%AF%B8%EC%A7%80-%EB%B9%8C%EB%93%9C%ED%95%98%EA%B8%B0 

 

Building better container images

https://aws.amazon.com/ko/blogs/containers/building-better-container-images/ 

 

Security scan fails on distroless image due to error

https://cloud.google.com/knowledge/kb/security-scan-fails-on-distroless-image-due-to-error-000004921