도커(Docker)??
컨테이너 기술을 지원하는 프로젝트
다양한 운영체제에서 사용 가능 (but 리눅스 권장)
리눅스의 name space와 cgroups와 같은 커널 기능을 사용하여 가상화
이미지와 컨테이너
이미지 : 필요한 프로그램과 라이브러리, 소스를 설치한 뒤 만든 하나의 파일
컨테이너 : 이미지를 격리하여 독립된 공간에서 실행한 가상 환경 (이미지가 실행 된것)

도커 vs 가상 머신 (Docker vs Virtual Machine)

도커와 가상 머신(VM)은 둘 다 가상화를 활용하지만 가상화 방식과 리소스 사용량에 차이점이 있다.
가상화 방식
가상 머신 : 하드웨어(Hypervisor)를 가상화하여 각각의 독립적인 운영체제(OS)를 실행
도커 : 도커 컨테이너는 OS 수준에서 가상화를 수행하여 여러 컨테이너가 동일한 OS 커널을 공유
리소스 사용량
가상 머신 : 각 OS를 포함하므로 메모리와 디스크 공간을 많이 차지
도커 : 애플리케이션과 필요한 라이브러리만 포함하여 가볍고 빠름
이렇듯 도커는 하나의 OS에서 컨테이너를 통해 독립적인 환경을 만들어 애플리케이션을 빠르게 실행할 수 있다는 장점이 있다.
VM은 OS를 포함, 완전한 독립적인 환경을 제공하기 때문에 보안에 강하다는 장점이 있다.