랩: Node 앱을 Docker Hardened Images로 마이그레이션

랩: Node 앱을 Docker Hardened Images로 마이그레이션

Node.js 베이스 이미지를 Docker Hardened Image로 교체하는 실습 랩이에요. Docker Scout로 CVE를 분석하고, DHI를 사용하는 멀티스테이지 빌드로 Dockerfile을 다시 작성하며, SBOM·VEX·규정 준수 증명을 탐구해볼게요.

출처: 문서

본문

Node.js 어플리케이션을 표준 node:24-trixie-slim 베이스 이미지에서 Docker Hardened Image로 마이그레이션해볼게요. Docker Scout를 사용해 이전·이후의 CVE 수, 이미지 크기, 정책 준수 영향도를 측정한 다음, DHI가 모든 이미지에 포함해 제공하는 공급망 증명을 탐구해요.

랩 시작하기

랩스페이스를 시작해볼게요:

$ docker compose -p labspace -f oci://dockersamples/labspace-dhi-node up -d

브라우저에서 http://localhost:3030 을 열어주세요.

실습을 마치면 랩스페이스를 정리해요:

$ docker compose -p labspace down

배우게 될 내용

이 Labspace를 마치면 다음과 같은 것들을 완료하게 돼요:

  • Docker Scout로 Node.js 컨테이너 이미지를 분석해 CVE와 정책 실패 식별하기
  • DHI dev·runtime 변형을 사용하는 멀티스테이지 빌드로 Dockerfile 다시 작성하기
  • 마이그레이션 전후의 이미지 크기와 취약점 수 비교하기
  • Docker Hardened Images에 포함된 공급망 증명(SBOM, SLSA, VEX) 검사하기
  • Grype나 Trivy 같은 외부 스캐너와 통합을 위해 VEX 문서 내보내기

모듈

# 모듈 설명
1 Introduction Docker Hardened Images와 보안 이점 개요
2 Setup 랩에 필요한 설정 작업 수행
3 Analyzing the Starting Image 앱 빌드, Docker Scout로 스캔, 실패 정책 검토
4 Migrating to DHI 멀티스테이지 DHI 빌드로 Dockerfile 재작성 및 결과 비교
5 DHI Attestations and Scanner Integration SBOM, FIPS 증명, STIG 스캔 검사 및 외부 도구용 VEX 내보내기

더 알아보기 (Learn more)

  • Docker Hardened Images
  • Docker Scout
  • SBOM / VEX