클라우드와 컨테이너의 기초
FROM python:slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "app.py"]위의 Dockerfile에서 docker build로 이미지를 만들 때 실행되는 명령과, docker run으로 컨테이너를 시작할 때 실행되는 명령의 조합으로 올바른 것은?
- Abuild 때: pip install, run 때: python app.py
- Bbuild 때: pip install과 python app.py, run 때: python app.py
- Cbuild 때: 없음, run 때: pip install과 python app.py
정답과 해설 보기
정답: A. build 때: pip install, run 때: python app.py
RUN은 이미지를 만들 때 명령을 실행하고, 그 결과(여기서는 설치된 라이브러리)를 새 레이어로 이미지에 저장합니다. CMD는 컨테이너를 시작했을 때 실행할 기본 명령을 이미지의 설정으로 기록할 뿐이며, 빌드할 때는 실행되지 않습니다. 따라서 라이브러리 설치는 한 번의 빌드로 끝나고, 컨테이너를 시작할 때마다 python app.py가 실행됩니다. docker run에서 이미지 이름 뒤에 명령을 쓰면 CMD의 내용은 그 명령으로 바뀝니다.