-
[Docker] Dockerfile 도커파일 이미지 빌드 시 환경변수 전달 방법(Feat. ARG, ENV)Docker 2021. 5. 19. 21:49728x90
docker image 빌드
1. 이미지 빌드 명령어 입력 시 ARG로 TIMESTAMP 환경변수 전달
2. docker 이미지 빌드 과정에서 Dockerfile ARG 변수 정의(기존 값 대체=재정의)
3. Dockerfile ENV 변수 NAME 생성
4. TIMESTAMP와 NAME 변수로 이루어진 ENV 변수 VISITOR 생성(CMD 실행 목적, ARG는 불가)
docker container 실행
5. 빌드한 이미지로 docker 컨테이너 실행 시 CMD 명령어로 ENV 환경변수 VISITOR 출력
Dockerfile 코드
# 도커 이미지 빌드 시 사용 환경변수(ARG) ARG TIMESTAMP # 도커 컨테이너 실행 시 CMD에서 사용 환경변수(ENV) ENV NAME="MyName" ENV VISITOR="${NAME}_${TIMESTAMP}" # VISITOR 환경변수 출력하기 CMD echo $VISITOR
docker 이미지 빌드 명령어
# docker build --build-arg {ARG 변수} -t {이미지명:태그} {Dockerfile의 위치: 현재위치=.} docker build --build-arg TIMESTAMP=`date +%y%m%d_%H%M` -t visitor_img:`date +%y%m%d_%H%M` .
- 이상 오늘의 삽질일기 끝!
[참고]
https://github.com/heowc/programming-study/issues/90
https://blog.bitsrc.io/how-to-pass-environment-info-during-docker-builds-1f7c5566dd0e
여기저기 삽질도 해보고
날려도 먹으면서
배우는 게
결국 남는거다
- Z.Sabziller
'Docker' 카테고리의 다른 글
[Docker] Image build 자동화를 위한 Shell Script 작성하기 (0) 2021.06.11 [Docker] Docker API를 활용한 도커 이미지 빌드하기 (0) 2021.06.03 [Docker] 도커 기본 명령어 모음 (0) 2021.05.16 [Docker] docker 도커 실행 오류 및 재시작 해결 방법 (0) 2021.05.13 [Docker] 도커 Django-MySQL docker-compose 에러(feat. dockerize) (0) 2021.04.28