728x90
반응형
이미지 & 컨테이너 : 무엇이며, 왜 사용하는가?
이미지(Image)란?
- 애플리케이션의 설계도 / 템플릿
- 포함하는 것
- 실행할 코드
- 필요한 도구와 라이브러리
- 환경 설정
- 특징
- 재사용 가능
- 공유 가능
- 변경되지 않는 상태(불변)
컨테이너( Container )란?
- 이미지를 기반으로 실제 실행되는 인스턴스
- 실제 동작하는 애플리케이션
- 특징
- 독립적인 실행 환경
- 필요한 모든 것이 포함된 패키지
- 다른 컨테이너와 충돌 없이 실행
이미지와 컨테이너의 순서를 살펴보자면
- Dockerfile 작성
- 이미지 빌드 ( docker build ) : 이 빌드한 이미지가 애플리케이션의 청사진 / 템플릿, 이걸 Docker Hub등을 통해 다른 사람과 공유도 가능하고, 팀원들이 같은 이미지를 다운받아 사용 가능하다 ( 생성된 이미지는 불변성을 가지고 있어, 한번 생성된 이미지는 수정할 수 없다, 그래서 매 작업마다 새로운 이미지를 생성 )
- 컨테이너 생성/실행 ( docker run [이미지ID] ) : 이미지를 기반으로 실제 실행되는 환경 생성, 같은 이미지로 여러 개의 컨테이너 실행 가능
이런 식으로 작업하게되면
- 모든 사람이 정확히 같은 버전의 앱을 실행
- 버전 관리가 명확함
- 이전 버전으로 돌아가기 쉬움
- 배포가 간단해짐
이러한 장점이 있다.
이미지와 컨테이너의 관계 쉬운 비유로 설명하면
- 이미지 = 레시피
- 요리를 만드는 방법이 적힌 조리법
- 한 번 작성하면 여러 번 사용 가능
- 다른 사람과 공유 가능
- 컨테이너 = 요리
- 레시피를 따라 실제로 만든 음식
- 같은 레시피로 여러 번 요리 가능
- 각각의 요리는 독립적으로 존재
사용 이점
- 일관성 : 어디서든 동일하게 실행
- 효율성 : 한 번 만든 이미지로 여러 컨테이너 실행
- 이식성 : 다른 환경에서도 동일하게 작동
이것이 도커의 기본 작동 방식이며, 이를 통해 애플리케이션을 더 쉽게 배포하고 관리할 수 있습니다.
참조
https://www.udemy.com/course/docker-kubernetes-2022
728x90
반응형
'강의 > Docker & Kubernetes : 실전 가이드' 카테고리의 다른 글
[20] 외부(사전 빌드된) 이미지의 사용 & 실행 (0) | 2025.02.11 |
---|---|
윈도우11 Home에서 Hyper-V 설치 및 활성화 방법 (0) | 2025.02.10 |
[13] Docker 실전 참여해보기 (0) | 2025.02.10 |
[6, 7, 8] Docker 설정 (0) | 2025.02.06 |
[5] 가상 머신 VS Docker 컨테이너 (1) | 2025.02.05 |
댓글