더북(TheBook)

두 그림은 언뜻 큰 차이가 없어 보이나, 이 작은 차이가 의미하는 차이는 크다. 각각의 가상 머신은 자신만의 운영체제를 별도로 갖는다. 이 운영체제는 애플리케이션이 사용해야 할 CPU와 메모리 자원을 상당량 차지한다. 문제는 또 있다. 운영체제의 라이선스 비용과 운영체제 업데이트 설치 부담이 추가로 생긴다. 결국 가상 머신은 격리는 달성할 수 있지만 밀집은 제공하지 못한다.

컨테이너는 이러한 단점을 해결할 수 있다. 각각의 컨테이너는 호스트 컴퓨터의 운영체제를 공유하므로 필요한 리소스가 크게 경감된다. 그만큼 실행도 빠르고 같은 호스트 컴퓨터에서 가상 머신에 비해 더 많은 수(일반적으로 약 다섯 배)의 애플리케이션을 실행할 수 있다. 또한, 컨테이너 역시 외부와 독립된 환경을 제공하므로 밀집과 격리가 동시에 달성되는 것이다. 이것이 도커의 또 다른 특징인 효율성이다.

이제 도커가 밀집과 격리를 모두 달성할 수 있는 비결을 알게 됐다. 지금부터는 컨테이너를 좀 더 익숙하게 다룰 수 있는 연습을 해 보자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.