반응형
도커 컨테이너와 이미지 개념 정리
1. 도커 이미지(Docker Image)
- 도커 컨테이너를 실행하기 위한 설정값과 실행 파일이 포함된 템플릿입니다.
- 리눅스의 ISO 파일처럼, 변경 불가능한(Immutable) 형태로 존재합니다.
- 애플리케이션 코드, 라이브러리, 환경 설정 등이 포함되어 있어, 어디서나 동일한 환경에서 실행될 수 있습니다.
- Docker Hub, 프라이빗 레지스트리 등을 통해 공유하고 배포할 수 있습니다.
- 하나의 이미지에서 여러 개의 컨테이너를 실행할 수 있습니다.

2. 도커 컨테이너(Docker Container)
- 도커 이미지를 기반으로 실행된 독립적인 실행 환경입니다.
- 가상머신(VM)과 달리 운영체제 전체를 포함하지 않고, 호스트 OS의 커널을 공유하여 가볍고 빠릅니다.
- 각 컨테이너는 자신만의 파일 시스템, 네트워크, 프로세스를 가짐으로써 격리된 환경에서 실행됩니다.
- 필요에 따라 시작/중지/삭제할 수 있으며, 필요하면 여러 개의 컨테이너를 동시에 실행할 수 있습니다.
도커 이미지와 컨테이너의 차이
항목 도커 이미지 도커 컨테이너
개념 | 컨테이너 실행을 위한 설정값과 실행 파일이 포함된 정적인 템플릿 | 이미지에서 실행되는 동적인 실행 환경 |
상태 | 변경 불가능 (Immutable) | 실행 중에는 변경 가능 |
용도 | 컨테이너를 생성하기 위한 템플릿 | 독립적으로 실행되는 환경 |
저장소 | Docker Hub, 로컬 저장소, 프라이빗 레지스트리 등에 저장됨 | 컨테이너가 실행되는 동안만 존재 (종료하면 사라질 수 있음) |
실행 방식 | 직접 실행할 수 없음 (docker run 명령어를 통해 컨테이너로 실행) | 실행 중인 애플리케이션 프로세스 |
도커 이미지와 컨테이너 활용
1. 도커 이미지 다루기
# 기존 이미지 목록 확인
docker images
# 새로운 이미지 다운로드 (예: Ubuntu 최신 버전)
docker pull ubuntu:latest
# 이미지 삭제
docker rmi ubuntu:latest
2. 도커 컨테이너 다루기
# 이미지에서 컨테이너 실행 (예: Ubuntu)
docker run -it ubuntu:latest /bin/bash
# 실행 중인 컨테이너 목록 확인
docker ps
# 중지된 컨테이너 포함하여 모든 컨테이너 확인
docker ps -a
# 컨테이너 중지
docker stop <컨테이너_ID>
# 컨테이너 삭제
docker rm <컨테이너_ID>
도커 이미지와 컨테이너 관계 이해하기
- 도커 이미지는 컨테이너의 "설계도" 역할을 합니다.
- 컨테이너는 이미지를 기반으로 실행되며, 실행 중에는 데이터를 저장하고 프로그램을 수행할 수 있습니다.
- 컨테이너를 삭제하면 변경된 데이터는 사라지지만, 볼륨을 활용하면 데이터를 보존할 수 있습니다.
- 동일한 이미지에서 여러 개의 컨테이너를 실행할 수 있어 애플리케이션 배포 및 확장성이 뛰어납니다.
이해를 돕기 위해 비유하면,
- 이미지는 CD/DVD에 들어 있는 OS 설치 파일
- 컨테이너는 설치된 운영체제 환경
이라고 볼 수 있습니다.
도커를 사용하면 같은 이미지로 여러 개의 컨테이너를 생성하여 동일한 환경에서 여러 애플리케이션을 실행할 수 있습니다.
'컴퓨터과학과' 카테고리의 다른 글
필수 패키지들이 가상환경에 설치 (0) | 2025.04.07 |
---|---|
구글 크롬(Google Chrome)과 크로미엄(Chromium) (0) | 2025.03.29 |
VMware 가상 머신 지우기 (2) | 2025.03.17 |
파일 시스템 정리 (File System Overview) (1) | 2025.03.16 |
Git 종합 가이드 (1) | 2025.03.12 |
댓글