도커란?
- 컨테이너를 사용하여 응용프로그램을 더 쉽게 배포하고 실행할 수 있도록 설계된 도구
- 컨테이너 기반의 오픈소스 가상화 플랫폼이며 생태계
컨테이너란?
일반 컨테이너를 생각해보면, 딱 맞는 규격에 여러 화물을 실어 쉽게 운송하도록 도와준다.
서버에서의 컨테이너도 마찬가지다. 다양한 프로그램/실행환경을 컨테이너로 추상화함으로써 동일한 인터페이스를 제공하고 프로그램의 배포 및 관리를 단순하게 해준다.
이 도커 컨테이너는 어떻게 생성할까? 이를 위해선 도커 이미지가 필요하다.
도커 이미지란?
- 코드, 런타임, 시스템 도구, 시스템 라이브러리 및 설정과 같은 응용 프로그램을 실행하는 데 필요한 모든 것을 포함하는 가볍고 독립적이며 실행 가능한 소프트웨어 패키지
ex) 카카오톡 이미지 → 카카오톡을 실행하기 위한 모든 파일과 dependency들을 가지고 있는 것이다.
- 이 이미지를 이용하여 도커 컨테이너를 생성한다.(이미지를 실행시키면 컨테이너가 된다) 만들어진 컨테이너를 실행하면 어플리케이션이 컨테이너 안에서 돌아간다.
(컨테이너는 이미지의 인스턴스이며 프로그램을 실행한다.)
✅ 도커 이미지
: 프로그램을 실행하는데 필요한 설정이나 종속성을 가지고 있다.
: 도커 이미지를 이용하여 컨테이너를 생성한다.
✅ 도커 컨테이너
: 프로그램을 실행한다.
: 이미지의 인스턴스이다.
출처
인프런 [따라하며 배우는 도커와 CI환경]