Docker - ARG vs ENV

문한성·2023년 4월 13일
0

공부

목록 보기
25/28
post-thumbnail

ENV

  • 환경변수 지정
  • $변수 혹은 ${변수} 형태로 표현 가능
  • 또한, ${변수:-값}으로 값을 기본값으로 표현 가능
  • ${변수:+값}의 경우는 반대에 경우인데 사용할 일이 있을까 싶다.
  • docker run 시에 --e 옵션을 활용하여 오버라이딩 할 수 있다.

ARG

  • build 시점에만 사용되는 변수
  • ARG 변수 혹은 ARG 변수=값 형태로 표현 가능
  • ENV처럼 ${변수:+값}, ${변수:-값}으로도 표현 가능
  • docker build 시에 --build-arg 옵션을 활용하여 오버라이딩 할 수 있다.
#example
# expect a build-time variable(이미지 빌드 시 --build-arg 파라미터로 변수 값 전달하기)
ARG SOME_VALUE

# set default ENV value from ARG
ENV env_var=$SOME_VALUE
# if not overridden, that value of env_var will be available to your containers!
$ docker run -e "env_var=another_value" alpine env

profile
기록하고 공유하려고 노력하는 DevOps 엔지니어

0개의 댓글