🐧 컨테이너는 어떻게 독립된 환경을 만들까?
·
DevOps/Linux
Container란? VM은 하이퍼바이저 위에서 독립적인 Guest OS를 실행합니다. VM 내부에서 애플리케이션, 파일 시스템, 바이너리/라이브러리, OS가 모두 포함되기 때문에 하나의 VM은 물리적으로 완전한 하나의 서버처럼 동작합니다.VM은 높은 격리 수준을 제공하지만, VM마다 자체 OS를 포함하기 때문에 무겁고 리소스 소모가 크다는 단점이 있습니다. 컨테이너는 별도의 운영체제를 포함하지 않고 호스트 운영체제의 커널을 공유(호스트의 시스템 콜 호출)합니다. 컨테이너마다 Guest OS를 갖지 않는 대신 namespace와 cgroup을 활용해 컨테이너마다 독립된 실행환경을 구성하게 됩니다.컨테이너는 하나의 프로세스처럼 실행되어 가볍고 리소스 소모가 작다는 장점이 있습니다. 컨테이너가 동작하는 원..