티스토리 뷰
이번 글에서는 도커 컨테이너의 환경변수에 대해 공부해보려고 한다. 도커 컨테이너를 실행할 때 필요한 변수, 파일과 같은 것들을 주입하여야 하는데, 컨테이너에 변수를 주입하는 방법으로 가장 대표적인 방법이 환경변수를 통한 방법이다. 환경변수를 어떻게 주입할 수 있는지 다루어 본다.
도커를 통해 환경변수를 주입하는 방법은 두 가지가 있다.
-e 옵션을 이용하여 docker run 시에 환경변수 주입
-e 라는 옵션을 이용하여 환경 변수를 주입할 수 있다. 다음 명령어를 통해 MY_HOST=tistory.com 이라는 환경변수를 주입한 ubuntu:focal 이미지를 기반으로 하는 컨테이너를 실행하고, bash 쉘로 접속할 수 있다.
docker run -i -t -e MY_HOST=tistory.com ubuntu:focal bash
위 명령어를 실행하면 다음과 같이 자동으로 해당 컨테이너의 bash 쉘로 접속하게 되는데,
이 상태에서 echo 명령어를 이용하여, 주입된 환경변수를 출력해 보자.
echo $MY_HOST
다음과 같이 정상 출력됨을 확인할 수 있다.
env 명령으로도 해당 환경변수가 주입되어 있는 것을 확인할 수 있다.
또한, 해당 컨테이너를 inspect 명령으로 들여다봐도 Env 에 해당 환경변수가 정의되어 있는 것을 확인할 수 있다.
환경변수 파일로 주입하는 방법
개발 (테스트) 환경에서는 파일로 주입하는 방법이 유용하다.
먼저, 다음과 같이 sample.env 파일을 생성한다.
세 가지의 환경 변수를 정의하였다.
이제 docker run 명령어를 실행할 때 몇 가지 옵션을 붙여 실행하면 된다.
docker run -i -t --env-file ./sample.env ubuntu:focal
--env-file 명령어를 통해 환경변수 파일의 경로를 명시한 후 컨테이너를 실행하는 방식이다.
바로 환경변수 목록을 보기 위해 명령어 뒤에 env 명령을 붙여도 된다.
다음과 같이 컨테이너 환경변수가 정상적으로 등록된 것을 확인할 수 있다.
'인프라 > Docker' 카테고리의 다른 글
도커 컨테이너 네트워크 (0) | 2022.02.09 |
---|---|
도커 컨테이너 명령어 실행 (exec) (0) | 2022.02.08 |
도커 컨테이너 - 엔트리포인트와 커맨드 (0) | 2022.02.06 |
도커 컨테이너 라이프사이클과 자주 쓰이는 명령어 모아보기 (0) | 2022.02.05 |
Docker 이미지와 컨테이너 톺아보기 (0) | 2022.02.04 |
- Total
- Today
- Yesterday
- dockerhub
- 자바
- docker
- env
- EC2
- Container
- uiux
- 안드로이드
- Material
- DESIGN
- 도커
- HCL
- 컨테이너
- main
- 메터리얼
- cmd
- Terraform
- 디자인
- 머티리얼
- ecr
- dockerfile
- Operator
- AWS
- 자격증명
- 자료형
- Java
- entrypoint
- Android
- 스타트업
- 테라폼
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |