본문 바로가기
DevOps/Docker

도커 기초 용어 정리 (컨테이너, 이미지, 도커 CLI, 도커 서버 데몬, 도커 허브)

by 그냥노깡 2021. 5. 9.

도커를 쓰는 이유

: 프로그램 설치 측면에서 예상치 못한 에러가 덜 발생하며, 설치하는 과정도 훨씬 간단해 진다.

 

도커란 무엇인가?

: 컨테이너를 사용하여 응용프로그램을 더 쉽게 만들고 배포하고 실행할 수 있도록

설계된 도구이며 컨테이너 기반의 오픈소스 가상화 플랫폼이며 생태계입니다.

 

컨테이너란 무엇인가?

일반적인 컨테이너 : 물건의 운송수단.

서버에서의 컨테이너 : 다양한 프로그램, 실행환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 프로그램의 배포 및 관리를 단순하게 해준다.

→ 일반 컨테이너의 개념처럼 프로그램을 손쉽게 이동 / 배포 / 관리를 할 수 있게 해준다.

AWS, Azure, Google cloud 등 어디에서든 실행 가능하게 해준다.

 

컨테이너 이미지

응용프로그램을 실행하는 데 필요한 모든 것을 포함하는 가볍고 독립적이며 실행 가능한 소프트웨어 패키지이다.

 

컨테이너와 이미지의 관계

컨테이너는 컨테이너 이미지의 인스턴스이다.

 

간단히 말해서

도커 이미지는 프로그램을 실행하는 데 필요한 설정이나 종속성을 갖고 있으며,

도커 이미지를 이용해서 컨테이너를 생성하며,

도커 컨테이너를 이용하여 프로그램을 실행한다.

 

객체지향 프로그래밍에서 클래스와 객체의 관계와 비슷하다고 할 수 있다. (붕어빵 틀과 붕어빵..)

 

 

— 도커를 사용할 때에는..

  1. 먼저 도커 CLI에 커맨드를 입력한다
  2. 그러면 도커서버(도커 Daemon)이 그 커맨드를 받아서 그것에 따라 이미지를 생성하든 컨테이너를 실행하든 모든 작업을 하게 된다.

도커 client(CLI)에 명령어를 입력하면

도커 서버에 요청하게 되고, 이미지가 없다면 도커 허브에서 이미지를 가져와 실행시킨다.

한 번 가져온 이미지는 캐싱이 되어서

다음 부터 docker run hello-world하면 캐시된 이미지를 통해 컨테이너를 만든 후 프로그램을 실행한다.