본문 바로가기
Info

도커 개념 정리하기 (도커 이미지, 도커 컨테이너, 도커 허브)

by 별별 리뷰어 2022. 1. 23.
반응형

도커 (Docker)

도커는 오픈 소스 컨테이너화 플랫폼입니다. 개발자는 이를 통해 애플리케이션을 컨테이너에 패키징할 수 있습니다. 즉, 애플리케이션 소스 코드를 운영 체제(OS) 라이브러리와 결합하고 모든 환경에서 해당 코드를 실행하는 데 필요한 종속성을 표준화했습니다. 컨테이너는 분산 애플리케이션의 제공을 단순화하며, 조직이 클라우드 네이티브 개발 및 하이브리드 멀티 클라우드 환경으로 전환함에 따라 그 인기가 높아지고 있습니다.

 

개발자는 Docker 없이도 컨테이너를 만들 수 있지만, 이 플랫폼을 통해 컨테이너를 보다 쉽고 단순하며 안전하게 제작, 배치 및 관리할 수 있습니다. Docker는 기본적으로 개발자가 단일 API를 통해 간단한 명령과 작업 절약 자동화를 사용하여 컨테이너를 빌드, 배포, 실행, 업데이트 및 중지할 수 있는 툴킷입니다.

 

도커 이미지

도커 이미지 (Docker Images)

도커 이미지에는 실행 가능한 응용 프로그램 소스 코드뿐만 아니라 응용 프로그램 코드가 컨테이너로 실행하는 데 필요한 모든 도구, 라이브러리가 포함됩니다. 도커 이미지를 실행하면 컨테이너의 인스턴스 하나 또는 여러 개가 됩니다.

 

Docker 이미지를 처음부터 작성할 수 있지만 대부분의 개발자는 이러한 이미지를 공통 저장소에서 pull(가져옴)을 합니다. 단일 기본 이미지에서 여러 개의 도커 이미지를 만들 수 있습니다.

 

도커 이미지 레이어 (Docker Image Layer)

도커 이미지를 구성하는 각 파일을 레이어라고 합니다. 이러한 계층은 일련의 중간 이미지를 형성하며, 각 계층이 바로 아래의 계층에 종속됩니다. 레이어의 계층은 도커 이미지의 효율적인 수명 주기 관리를 위한 핵심 요소입니다. 따라서 가장 자주 변경되는 도면층을 가능한 한 높은 스택에서 구성해야 합니다.

 

그 이유는 이미지의 도면층을 변경하면 도커가 해당 도면층을 재작성할 뿐만 아니라 해당 도면층에서 작성된 모든 도면층을 재작성하기 때문입니다. 따라서 스택의 맨 위에 있는 레이어를 변경하려면 전체 이미지를 재구성하는 데 최소한의 계산 작업이 필요합니다. 이전 레이어는 롤백 또는 다른 프로젝트에 재사용하기 위해 저장됩니다.

 

도커 원리

도커 컨테이너 (Docker Container)

도커 컨테이너는 응용프로그램이 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 빠르고 안정적으로 실행되도록 코드와 모든 종속성을 패키징하는 소프트웨어의 표준 단위입니다. 도커 컨테이너 이미지는 응용프로그램 실행에 필요한 코드, 런타임, 시스템 도구, 시스템 라이브러리 및 설정과 같은 모든 것을 포함하는 가벼운 독립형 실행 소프트웨어 패키지입니다.

 

도커 컨테이너는 도커 이미지의 실시간 실행 인스턴스입니다. 도커 이미지는 읽기 전용 파일이지만 컨테이너는 사용 후 삭제 가능한 라이브 실행 콘텐츠입니다. 사용자는 도커와 상호 작용할 수 있으며, 관리자는 도커 명령을 사용하여 설정 및 조건을 조정할 수 있습니다.

 

도커 허브 (Docker Hub)

Docker Hub는 "컨테이너 이미지를 위한 세계 최대의 라이브러리 및 커뮤니티"라고 부르는 Docker 이미지의 공용 저장소입니다. 여기에는 상용 소프트웨어 공급업체, 오픈 소스 프로젝트 및 개별 개발자의 100,000개 이상의 컨테이너 이미지가 저장되어 있습니다.

 

모든 도커 허브 사용자는 원하는 대로 이미지를 공유할 수 있습니다. 또한 Docker 파일 시스템에서 미리 정의된 기본 영상을 다운로드하여 컨테이너화 프로젝트의 시작점으로 사용할 수 있습니다.

반응형

댓글