인수 & 환경변수

유현민·2022년 9월 22일
0

도커 & 쿠버네티스

목록 보기
15/28
post-thumbnail

도커는 빌드 타임 인수와 런타임 환경 변수를 지원한다.

인수

  • Dockerfile에서 특정 Dockerfile 명령으로 다른 값을 추출하는데 사용할 수 있는 유연한 데이터 비트, 즉 변수를 설정할 수 있다.
  • docker build를 실행할 때 --build-arg 옵션과 함께 제공되는 인수를 기반으로.
  • 실행 중인 애플리케이션의 전체 애플리케이션 코드에서 사용 가능

환경 변수

  • Dockerfile 내부에서 사용 가능
  • Dockerfile의 ENV옵션 사용
  • docker run에서 --env 옵션 사용

.env라는 파일을 만들고 안에 환경변수를 삽입
docker run에서 --env-file 상대경로 사용.

인수와 환경변수는 서로 다른 모드, 다른 구성에서 하나의 동일한 이미지를 기반으로 하나의 동일한 컨테이너를 실행하는데 도움이 된다.

환경 변수 보안

보안 데이터를 Dockerfile에 직접 포함 하면 안된다.
변수 파일에 따로 저장을 하면 된다.
만약 보안 데이터가 이미지에 포함이 된다면 docker history를 이용하면 이 값을 읽는게 가능!

빌드 인수

Dockerfile에 다양한 값을 플러그인 하거나, 이러한 값을 Dockerfile에 하드 코딩하지 않고도 이미지를 빌드할 때, 다른 값을 끼워넣기 할 수있다.

  • Dockerfile에 ARG 이름=변수 값 으로 사용
  • CMD를 제외하고 모든 곳에서 사용 가능
  • docker build에서 --build-arg 변수 이름=변수 값 으로 사용 가능
profile
smilegate megaport infra

0개의 댓글