DockerSlim으로 컨테이너 이미지 크기 줄이기

# 2022년도 2일 밖에 남지 않았습니다. Red Hat Developer (developers.redhat.com)에서 2022년 올 한해 가장 인기 있었던 기사들을 게재합니다. # Rank#6. DockerSlim으로 컨테이너 이미지 크기 줄이기 컨테이너는 애플리케이션(이하 'App')을 패키징하는 좋은 방법입니다. App 코드베이스를 종속 항목(dependency)과 함께 패키징하면 컨테이너 이미지가 생성됩니다. 컨테이너 이미지가 작을수록 App이 처음에 더 빨리 기동(spin up)하고 더 빨리 확장됩니다. 하지만 많은 컨테이너 이미지는 수백 메가바이트로 꽤 큽니다. Docker Hub를 검색하다 보면 이미지 크기에 놀랄 때가 많습니다. 이 기사에서는 DockerSlim이라는 프로젝트를 사용하여 크기에 맞게 Docker 컨테이너 이미지를 최적화하는 방법을 알아봅니다. Apache 2.0 라이선스에 따라 오픈 소스로 제공되는 DockerSlim은 컨테이너 이미지의 어떤 것도 변경하지 않지만 여전히 크기를 최대 30배까지 줄이거나 최소화할 수 있습니다. 컴파일된 언어로 작성된 애플리케이션의 경우 크기 감소는 훨씬 더 극적일 수 있습니다. DockerSlim은 또한 사용 가능한 공격 영역(surface)을 줄임으로써 패키지를 더 안전하게 만듭니다. DockerSlim 사용하기 DockerSlim은 다양한 기술을 사용하여 컨테이너 이미지를 최적화하고 보호합니다. 그 중 하나는 App이 비즈니스 로직을 제공하는 데 필요하지 않은 컨테이너 이미지의 패키지와 파일을 폐기하는 것입니다. 추가 파일을 제거하면 컨테이너의 공격 영역을 줄이는데 도움이 됩니다. DockerSlim 사용은 간단한 2단계 프로세스입니다. Step 1: DockerSlim 설치 DockerSlim의 설치 절차(Step)는 DockerSlim GitHub 리포지토리에 설명되어 있습니다. 다음은 brew를 사용하여 macOS에 DockerSlim을 설치하는 방법입니다. $ brew install docker-slim Step 2: 컨테이너 이미지 축소 DockerSlim이 설치되면 이를 사용하여 기존 컨테이너 이미지에 대해 docker-slim을 실행하여 컨테이너 이미지를 축소할 수 있습니다. docker images를 실행하여 현재 사용 가능한 컨테이너 이미지를 나열하는 것으로 시작합니다. $ docker images 다음으로 기존 컨테이너 이미지에 대해 docker-slim build를 실행하여 축소합니다. $ docker-slim build python-hello-world-ubi docker-slim은 소스 이미지에서 최적화된 이미지를 생성하고 .slim 파일 확장자로 저장합니다. 이 경우 원본 이미지는 169MB이고 새로 최적화된 이미지는 25.8MB로 크기가 600% 줄었습니다. DockerSlim 컨테이너 보고서 가져오기 궁금한 경우 docker-slim xray 명령어(command)를 사용하여 패키지 크기에 대한 세부 정보를 얻을 수 있습니다. 이 명령어는 대상 컨테이너 이미지에 대한 정적 분석을 수행하고 이미지에서 Dockerfile을 리버스 엔지니어링하여 컨테이너 이미지 내부에 무엇이 있고 왜 그렇게 큰지 알려줍니다. $ docker-slim xray python-hello-world-ubi docker-slim의 xray 옵션은 컨테이너 이미지에 대한 모든 세부 정보가 포함된 slim.report.json 파일을 생성하고 그 안에 무엇이 있는지 조사할 수 있는 훌륭한 리소스를 제공합니다. 결론 부풀어진 컨테이너 이미지는 App 성능에 부정적인 영향을 미칠 수 있습니다. 컨테이너 이미지가 너무 커지는 것 같으면 이 기사를 읽은 후 DockerSlim을 사용하여 이미지를 축소하는 방법을 알아야 합니다. 상세 내용은 아래 링크를 통해 확인하실 수 있습니다. 감사합니다.

Reduce the size of container images with DockerSlim | Red Hat Developer

Red Hat Developer

Reduce the size of container images with DockerSlim | Red Hat Developer

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2022년 12월 30일 오전 1:20

 • 

저장 10조회 1,857

댓글 0