클라우드와 컨테이너의 기초
어떤 이미지로 시작한 컨테이너 안에서, 이미지에 포함된 설정 파일 /etc/app.conf를 수정했다. Docker의 일반적인 스토리지 구조(overlay2 등)에서 일어나는 일로 올바른 것은?
- A파일이 컨테이너의 쓰기 가능한 레이어로 복사된 후 수정되며, 이미지와 다른 컨테이너에는 영향을 주지 않는다
- B이미지 레이어에 있는 파일이 직접 수정되어, 같은 이미지로 시작한 다른 컨테이너에서도 변경 후의 내용이 보인다
- C이미지 레이어는 읽기 전용이므로 이미지에 포함된 파일은 수정할 수 없으며, 쓰기는 오류가 된다
정답과 해설 보기
정답: A. 파일이 컨테이너의 쓰기 가능한 레이어로 복사된 후 수정되며, 이미지와 다른 컨테이너에는 영향을 주지 않는다
컨테이너의 파일 시스템은 읽기 전용인 이미지 레이어 위에 컨테이너별 쓰기 가능한 레이어를 겹쳐 하나로 보이게 한 것입니다. 아래 레이어에 있는 파일을 처음 수정할 때 그 파일이 쓰기 가능한 레이어로 복사되고, 이후로는 복사본이 사용됩니다(카피 온 라이트). 그래서 이미지 레이어는 바뀌지 않으며, 같은 이미지를 공유하는 다른 컨테이너에도 영향을 주지 않습니다. 큰 파일은 첫 복사에 시간이 걸리므로, 데이터베이스의 데이터처럼 자주 쓰는 것은 볼륨에 둡니다.