- An open-source software project automating the deployment of applications inside software containers
- Docker is a computer program that performs operating-system-level virtualization also known as containerization.
- Linux container 완전한 신기술은 아님, 예전부터 복잡한 container 기술들이 있었음
- 가상 머신(Virtual Machine, VM)은 컴퓨팅 환경을 소프트웨어로 구현한 것, 즉 컴퓨터를 에뮬레이션하는 소프트웨어다. 가상머신상에서 운영 체제나 응용 프로그램을 설치 및 실행할 수 있다.
- Hypervisor
- Host machine 의 자원을 점유하여 사용
- 제한적 고립화
- Host machine 의 하나의 프로세스로 동작
- 하나의 요청에 즉시 응답가능
- 애플리케이션 상태(중요)를 저장하지 않음
- 예) WEB frontend, backeodn API, cron script등
- 상태 어플리케이션의 예: DB
- 독커는 가상머신이 아닌 유닉스 프로세스를 감싸는 매우 가벼운 외부 계층(wrapper)