Docker

Docker 도커, 기본 기능 뭐가 있을까?

LEEHANDS 2022. 2. 19. 15:38
반응형

1. Docker 이미지 생성

애플리케이션 실행에 필요한 프로그램 / 라이브러리/ 미들웨어와 OS / 네트워크 설정 등을 하나로 모아, Docker  이미지 를 생성한다.

도커 이미지는 실행환경에서 동작하는 컨테이너의 기반이 된다.

도커 이미지란 애플리케이션 실행에 필요한 파일이 담긴 디렉토리다.

명령어를 사용해 tar 압축파일로 만들 수 있다.

 

 

2. Docker 컨테이너 동작

리눅스 상에서 컨테이너 단위로 서버를 구동시킨다.

도커 이미지를 통해 도커가 설치되었다면 어디서든 컨테이너를 구동할 수 있다.

컨테이너의 기동 정지 파기 는 도커 커맨드로 이루어진다 (RUN / STOP / RM )

도커는 하나의 리눅스 커널을 여러 컨테이너가 공유한다. 컨테이너 내 동작하는 프로세스 를 하나의 그룹으로 관리하고 그룹별로 각각 다른 파일 시스템과 호스트명, 네트워크 등 할당된다.

서로 다른 그룹인 경우 프로세스와 파일에 엑세스할 수 없다.

이러한 구조로 컨테이너 를 독립된 공간으로 관리하며 이를 실행하기 위해 리눅스 커널 기능이 사용되고 있다.

 

 

 

3. Docker 이미지 공개 및 공유

도커 이미지는 도커 레지스트리에서 통합적으로 관리할 수 있다. 예를 들어 공식 도커 레지스트리 인 도커 허브 에서는 우분투 등 리눅스 배포판의 기본 기능을 제공하는 베이스 이미지가 배포되어 있다.

 

4. Docker 컴포넌트

도커는 코어 기능을 제공하는 Docker Engine 을 중심으로 이미지를 생성 공개 컨테이너 실행하기 위한 여러 가지 컴포넌트를 제공한다.

4-1 Docker Engine

도커 이미지 생성과 컴포넌트 구동 등을 위한 도커의 코어 기능이다.

명령어 실행 및 도커 파일을 통한 이미지 생성 등을 할 수 있다.

 

4-2 Docker Kitematic

도커 이미지 생성과 컴포넌트 구동 등을 위한 도커 GUI 툴

 

4-3 Docker Registry

컨테이너 기반이 되는 도커 이미지를 공개 및 공유하기 위한 레지스트리 기능

 

4-4 Docker Compose

여러컨테이너의 구성 정보를 코드로 정의하고 명령어를 통해 애플리케이션 실행 환경을 구성하는 컨테이너통합 관리툴

 

4-5 Docker Machine

로컬 호스트인 버츄얼박스를 시작으로 클라우드 환경에 도커 실행환경을 커맨드로 자동 생성하기 위한 툴

 

4-6 Docker Swarm

여러 도커 호스트를 클러스터화 하기 위한 툴이다.

매니저 는 클러스터 관리와 API를 제공하며 Node는 도커 컨테이너를 실행한다.

 

도커에서 애플리케이션 실행 환경을 구동하기 위해 이러한 컴포넌트를 필요에 맞게 조합하여 사용한다.

도커 를 클라이언트 OS에서 사용하기 위하여 필수적인 툴을 하나로 정의한 도커 툴박스도 제공한다.

반응형