320x100
320x100

https://docs.docker.com/build/building/best-practices/

 

Best practices

Hints, tips and guidelines for writing clean, reliable Dockerfiles

docs.docker.com

 

 

- 멀티 스테이지 빌드를 사용하라

 

- 공통점이 많은 이미지가 여러 개인 경우 재사용 가능한 이미지를 만드는 것을 고려

 

- 올바른 베이스 이미지를 선택 (공식 이미지, 인증된 배포자)

 

- 이미지를 자주 rebuild 하라 (--no--cache 옵션 사용)

 

- .dockerignore로 불필요한 파일들을 제외하라

 

- 임시 컨테이너를 만들어라

 

- 불필요한 패키지를 설치하지마라

 

- 컨테이너 관심사를 분리하라 (컨테이너에서 1개의 프로세스만 실행)

각 컨테이너에는 하나의 관심사만 존재해야한다

그래야 수평적으로 쉽게 확장하고 재사용 할 수 있다

 

- 지시자를 여러줄로 실행

쉽게 읽을 수 있고 레이어가 줄어들어 효율적

RUN apt-get update && apt-get install -y \
  bzr \
  cvs \
  git \
  mercurial \
  subversion \
  && rm -rf /var/lib/apt/lists/*

 

- 빌드 캐시를 활용

 

- 기본 이미지 버전을 고정하라

3.19 이런식으로 상세하게 버전을 고정

 

- CI 과정에서 빌드와 테스트를 수행해라

300x250
728x90