Docker 이미지와 컨테이너의 차이점
KUKJIN LEE • 5개월 전 작성
컨테이너는 음식이 담겨 있는 도시락통이라면 이미지는 도시락 통에 담겨 있는 음식을 만들 수 있는 레시피라고 생각하면 이해하기 쉽습니다.
-
정의: Docker 이미지는 컨테이너를 생성하기 위한 정적 템플릿입니다. 반면에 Docker 컨테이너는 이러한 이미지를 기반으로 실행되는 애플리케이션의 동적 인스턴스입니다.
-
상태: Docker 이미지는 불변이기 때문에 생성 후 변경할 수 없습니다. 하지만 Docker 컨테이너는 실행 중에 변경이 가능합니다.
-
역할: Docker 이미지는 컨테이너를 만들기 위한 청사진 역할을 하고, 컨테이너는 그 청사진을 실행하는 역할을 합니다.
-
저장 위치: Docker 이미지는 Docker 레지스트리 (예: Docker Hub)와 같은 저장소에 저장됩니다. 반면에 컨테이너는 Docker 호스트 시스템에 저장되고 실행됩니다.
-
크기: Docker 이미지는 일반적으로 작은 크기로 유지됩니다. 반면에 컨테이너는 실행 중 필요한 리소스를 포함하기 때문에 크기가 증가할 수 있습니다.
-
변경 가능성: 이미지는 불변이기 때문에 변경할 수 없습니다. 변경하려면 새로운 이미지를 빌드해야 합니다. 반면에 컨테이너는 실행 중에 변경할 수 있습니다.
-
사용 목적: Docker 이미지는 동일한 설정으로 여러 컨테이너를 생성하기 위해 사용됩니다. 컨테이너는 애플리케이션 실행 및 테스트에 사용됩니다.
-
예시 명령어: 이미지는
docker build
또는docker pull
명령어를 통해 생성 및 가져올 수 있습니다. 컨테이너는docker run
,docker start
,docker stop
명령어를 통해 실행 및 제어됩니다.
이렇게 설명하면 이해하기가 힘들기 때문에 아래 표를 통해 쉽게 이해해봅시다.