도커
- 리눅스 컨테이너에 여러 기능을 추가함으로써 애플리케이션을 컨테니어로서 좀 더 쉽게 사용할 수 있게 만들어진 오픈소스 프로젝트
- Go 언어로 작성되어 있고 가상 머신과는 달리 도커 컨테이너는 성능의 손실이 거의 없다.
도커가 나오기전
- 도커전에는 하이퍼바이저를 사용해 하나의 호스트에서 여러 개의 운영체제를 생성해 사용
- 시스템 자원을 가상화, 생성하는 작업은 하이퍼바이저를 반드시 거치기 때문에 일반 호스트에 비해 성능적으로 손실 발생
- 게스트 OS 각각 커널 포함
- ex) VirtualBox, VMware
도커 특징
- 하이퍼바이저와 다르게 리눅스의 자체 기능인 chroot, 네임스페이스, cgroup을 사용함으로써 성능 손실 X
- 호스트 커널을 공유