Skip to content
isdnetworks
Go back

Docker Hardened Images — 도입 검토와 판단 기준

Docker에서 “Enterprise assurance with Docker Hardened Images”라는 안내를 보냈다. 보안 강화 이미지를 별도로 제공한다는 건데, 기존 이미지와 뭐가 다르고 도입할 가치가 있는지 검토했다.

Table of contents

Open Table of contents

Docker Hardened Images란

Docker Hardened Images는 Docker Official Images를 기반으로 보안 강화 처리를 추가한 이미지다:

Official Images와 비교

항목Official ImagesHardened Images
기본 이미지동일동일 기반
CVE 패치 주기커뮤니티 의존SLA 기반 (24~72시간)
불필요 패키지포함 가능최소화
SBOM없음제공
서명Docker Content Trust추가 서명
비용무료Docker Business 구독 필요
지원 이미지전체주요 이미지만

도입 판단 기준

도입이 유리한 경우

기존 방식으로 충분한 경우

대안: 자체 보안 강화

Hardened Images를 도입하지 않더라도 비슷한 효과를 낼 수 있다:

1. 경량 베이스 이미지

# Alpine 기반 (5MB)
FROM node:20-alpine

# 또는 Distroless (더 극단적)
FROM gcr.io/distroless/nodejs20-debian12

2. 자동 CVE 스캔

# GitHub Actions에서 Trivy 스캔
- uses: aquasecurity/trivy-action@master
  with:
    image-ref: myapp:latest
    severity: CRITICAL,HIGH
    exit-code: 1  # 취약점 발견 시 빌드 실패

3. 이미지 자동 재빌드

# 매주 베이스 이미지 업데이트를 감지해 재빌드
on:
  schedule:
    - cron: '0 0 * * 1'  # 매주 월요일

4. 런타임 보안

# non-root 실행
RUN adduser -D appuser
USER appuser

# read-only 파일시스템
# docker run --read-only myapp

도입 보류 판단

소규모 팀에서 이미지 10개 미만을 운영하고, 이미 Alpine 기반 + Trivy 스캔을 적용한 환경이었으므로 Hardened Images 도입은 보류했다. Docker Business 구독 비용 대비 추가 가치가 제한적이라고 판단했다.

규제 환경이 바뀌거나 이미지 수가 크게 늘면 재검토할 예정이다.

정리

Docker Hardened Images는 엔터프라이즈급 보안/컴플라이언스가 필요한 조직에 적합하다. 소규모 팀은 Alpine + CVE 스캔 + non-root 실행만으로도 충분한 보안 수준을 달성할 수 있다.


Share this post on:

Previous Post
접근 경로의 제약을 적어 둔다
Next Post
GitHub Actions 과금 체계 변경 — 무엇이 달라지나