Docker
컨테이너 가상화 기술을 기반으로 하는 오픈소스 플랫폼
Docker의 엔진 = Client-Server Architecture
클라이언트가 명령어를 서버에 전달, 서버가 전달받은 명령어 실행
사용자가 Docker 오브젝트를 관리하기 위해 사용하는 가장 근본적인 수단
CLI(Command-line interface)제공
명령어 입력, 명령어 수행하는 dockered 프로세스로 전달
Docker 오브젝트 관리하는 주체
이미지를 저장하여 관리
컨테이너를 생성하기 위해 필요한 템플릿
기반이 되는 이미지를 선택하고,
필요한 것들을 알맞게 이미지 안에 추가하여 사용자만의 커스텀 이미지 생성 가능
이미지를 실행시켜 컨테이너라는 가상화 공간을 만듦
Docker가 있다면 어디서든지 저장소로부터 이미지를 가져와서 컨테이너 실행 가능
Logs - 현재 서비스의 상태 파악 가능
Resource Isolation and Grouping - Cgroups 기능을 통해 각각의 컨테이너마다 독립적인 CPU와 메모리 할당 가능
독립적 - 컨테이너는 독립된 파일 시스템이기 때문에 독립적인 가상 네트워크 인터페이스와 IP 주소 가짐