Docker 는 지금까지 사용해오던 가상머신과 비슷하다.
가상 머신에 리눅스를 설치한 뒤 각종 서버 프로그램과 DB 를 설치하고
개발한 애플리케이션과 웹사이트를 실행했다.
요즘에는 서비스 형태로 제공되는 AWS, Azure, Google Cloud Platform 등을 사용하기도 한다.
VM
문제는 이 가상머신이 편하긴 한데 성능이 좋지 못한 단점이 있다는 것이다.
가상화 방식이 전가상화 (VMWare) 방식이던 반 가상화 (Xen) 방식이던 Guest OS 를 설치해야 한다.
결국 이미지 내부에 OS 이미지가 포함되기 때문에 이미지 용량이 커진다.
공유되지 않는 부분만 따로 보면 아래와 같다.
Docker
반면에 도커는 리눅스 컨테이너로 Host Server 의 Kernel 을 공유한다.
즉 VM 과 달리 별도의 Booting 과정이 없으며 호스트 OS 를 공유하기 때문에 굉장히 가볍다.
역시 공유되지 않는 부분을 살펴보자.
차례대로 기본 App 이 있는 경우 , 이를 복사한 컨테이너 ,
복사한 컨테이너에서 Bin/Libs 와 App 의 일부분을 수정한 컨테이너다.
먼저 복사시에는 Bins/Libs 는 그대로 공유된다.
Modify 시에는 App 및 Bins/Libs 의 수정 부분만 이미지로 저장된다.
'Container > Docker' 카테고리의 다른 글
07. Docker Image (0) | 2020.01.14 |
---|---|
06. Docker Run (0) | 2020.01.14 |
04. Docker CE 설치하기 (0) | 2020.01.14 |
03. Docker 시스템 (0) | 2020.01.14 |
01. Docker 소개 (1) | 2020.01.14 |