Docker

[Dockerfile] ARG / ENV

비번변경 2022. 5. 19. 20:25

Dockerfile에서 사용하는 ARG 명령문과 ENV 명령문을 정리한다.

ARG

도커 이미지 빌드를 위해 Dockerfile 내에서 사용하는 변수

빌드 시점에 사용하며, docker build 명령의 --build-arg 옵션에 해당한다.

사용할 때는 ${NAME}의 형태로 읽어서 사용할 수 있다.

ARG <NAME>
ARG <NAME>=<VALUE>

FROM ${<NAME>}

FROM 이전에 있는 ARG는 FROM에서만 사용 가능하다. 즉, 내부에서 사용하기 위해서 한번 더 선언해야 한다.

ARG centos_version
FROM centos${centos_version} AS builder

ARG centos_version # 안에서 사용하려면 또 ARG를 선언해야 한다.
ENV CENTOS_VERSION=${centos_version}

 

ENV

환경변수를 설정하는 명령어

설정된 환경 변수는 이미지 빌드 시 사용되며, 해당 이미지를 실행한 컨테이너 내에서 사용할 수 있다.

docker run 명령의 -e 옵션에 해당한다.

ENV <KEY> <VALUE>
ENV <KEY>=<VALUE>

 


참고 문서

https://github.com/heowc/programming-study/issues/90

https://www.daleseo.com/dockerfile/

https://wickso.me/docker/arg-vs-env/