인프라 & 클라우드 · 중급
Docker와 가상머신(VM)의 차이점에 대해 설명해주세요.
힌트 · 격리 수준, 리소스 사용량, 시작 시간을 비교해보세요.
컨테이너하이퍼바이저커널격리오버헤드
모범답안
Docker와 가상 머신(VM)은 둘 다 애플리케이션을 격리된 환경에서 실행하는 기술이지만, 격리 수준과 리소스 사용량에서 큰 차이가 있습니다.
VM은 하이퍼바이저를 통해 게스트 OS 전체를 가상화하여 격리합니다. 반면, Docker는 컨테이너를 사용하여 호스트 OS의 커널을 공유하고, 애플리케이션과 필요한 라이브러리만 패키징합니다.
이러한 차이점 때문에 Docker 컨테이너는 VM보다 훨씬 가볍고 빠르게 시작하며, 리소스 사용량도 적습니다. VM은 완전한 OS를 실행해야 하므로 오버헤드가 크지만, Docker는 호스트 OS의 자원을 효율적으로 공유합니다. 격리 수준은 VM이 더 높지만, Docker도 충분한 격리 수준을 제공하며, 더 효율적인 운영이 가능합니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 DevOps / CI·CD 면접 질문
- 도커 이미지가 레이어(layer)로 구성된다는 것은 무슨 의미이며, 레이어 구조가 어떤 이점을 주나요?
- Dockerfile로 이미지를 빌드할 때 레이어 캐시(build cache)는 어떻게 동작하며, 캐시를 잘 활용하려면 명령어 순서를 어떻게 배치하는 것이 좋은가요?
- 컨테이너와 가상머신(VM)의 차이를 격리 방식과 리소스 사용 측면에서 설명해주세요.
- Dockerfile의 주요 명령어에 대해 설명해주세요.
- Docker Compose의 용도와 사용 방법에 대해 설명해주세요.
- Kubernetes의 주요 개념(Pod, Deployment, Service, Ingress)에 대해 설명해주세요.