컨테이너 기반의 가상화 vs 하이퍼바이저 기반의 가상화(OS 가상화)
하이퍼바이저 기반의 가상화
- 격리된 환경에서 또 하나의 가상 서버를 실행하는 기술
- Guest OS : 가상 서버를 의미
- 다양한 OS 선택 가능
- Guest OS에서 실행되는 매플리케이션이 Host 자원을 사용하기 위해서는 반드시 Guest OS를 거쳐야만 한다.
→ 속도적인 측면에서 상대적으로 느릴 수 있다.
- Hypervisor : Guest 와 Host 를 연결
- 서버가상화 기술로서 Host server에 설치되고 Host와 Guest를 나누는 역할을 하며
각각의 Guest는 Hypervisor에 의해 관리되며 시스템 자원을 할당받게 된다
- 서버가상화 기술로서 Host server에 설치되고 Host와 Guest를 나누는 역할을 하며
- Host : 물리 서버를 의미
컨테이너 기반의 가상화
- 격리된 환경에서 프로세스를 실행하는 기술
- 애플리케이션은 Docker Engine을 통해 Host 자원을 사용할 수 있고,
- 구조적으로 Guest OS가 없기 때문에 용량도 매우 가볍다.
도커
- 컨테이너 기반의 가상화 플랫폼
도커 허브
- 도커에서 제공하는 이미지 저장소
- 우리가 흔히 알고 있는 GitHub 저장소로 생각하면 쉽다.
- https://hub.docker.com/
- 원하는 이미지 검색 가능
Docker Hub Container Image Library | App Containerization
Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide.
hub.docker.com
도커 컴포즈
- 다중 컨테이너를 정의하고 실행하기 위한 도구
- 즉, 여러개의 프로세스(Mysql, webserver...)를 하나의 파일로 정의해서 동시에 실행하기 위한 도구
- YAML 파일을 사용하여 다중 컨테이너를 구성함
- https://docs.docker.com/compose/
- 도커 컴포즈 사용방법 확인 가능
Docker Compose overview
docs.docker.com
version: "3.9" # optional since v1.27.0
services: // 아래 서비스 2개를 실행(web, redis)
web:
build: .
ports:
- "8000:5000"
volumes:
- .:/code
- logvolume01:/var/log
depends_on:
- redis
redis:
image: redis
volumes:
logvolume01: {}
'SPRING' 카테고리의 다른 글
Test code (0) | 2023.05.10 |
---|---|
도커(docker)설치 후 MySQL에 접속하는 방법 (0) | 2023.05.09 |
View 환경설정 (spring-boot-devtools) (0) | 2023.03.02 |
VO & DAO & DTO란 무엇인가 (0) | 2023.01.19 |
웹 프로젝트의 기본 구조 (0) | 2023.01.18 |