2019.05.02 - docker-compose.yml 파일의 config 설정에 따라 달라지는 효과

docker-compose는 docker-compose.yml 파일 안의 key가 존재하느냐 하지 않느냐에 따라  실행되는 방식이 아예 달라진다.

1. image 키가 존재, build 키가 없을 때

"지정한 이미지를 실행해줘"

- 해당 image를 실행한다.
- 다른 경우와 같이 image가 로컬에 존재하면 그 이미지를 쓰고 존재하지 않으면 hub에서 받아와서 실행한다.

2. image 키가 존재, build 키가 존재

"현재 디렉토리에서 Dockerfile을 build해서 실행해주고, build 된 이미지의 이름은 image야"

- build 키의 value가 Dockerfile의 이름이 되고 만약 .을 넣으면 Dockerfile의 기본 이름인 Dockerfile을 불러온다.
- image 키의 value는 Dockerfile을 통해 빌드 한 이미지의 네임스페이스다. (위의 경우엔 해당 image를 불러와라는 뜻이었지만 이 경우엔 완전히 달라진다.)

3. image 키가 존재하지 않음, build 키가 존재

"현재 디렉토리에서 Dockerfile을 빌드해서 실행해주고, 빌드 된 이미지 이름은 CurrentDirectory_ServiceName이야."

- 2번과 마찬가지이지만 이 경우엔 image 키가 없으므로 해당 이미지에게 어떤 이름을 줘야할 지 모른다.
- 이 때 Docker는 이미지 이름을 '현재디렉토리_서비스이름' 으로 짓고 image list에 등록한다.

댓글

이 블로그의 인기 게시물

로컬 Tomcat 서버 실행속도 개선

2019.05.23 - SQLAlchemy 의 객체 상태 관리 (expire, refresh, flush, commit) 에 관한 이해

2020.02.17 Python의 multiprocessing 중 Pool.map(), chunksize에 관한 내용