가상화(Virtualization)
- 물리적인 컴퓨터리소스를 다른 시스템이나 애플리케이션에서 사용할 수 있도록 제공
- 플랫폼 가상화
- 리소스 가상화
하이퍼바이저 (Hypervisor)
- Virtual Machine Manager(VMM)
- 다수의 운영체제를 동시에 실행하기 위한 논리적 플랫폼
- Type 1: Native or Bare-metal
- Type 2: Hosted
OS Virtualization
- Host OS 위에 Guest OS 전체를 가상화
- VMWare, VirtualBox
- 자유도가 높으나, 시스템에 부하가 많고 느려짐
Container Virtualization
- Host OS가 가진 리소스를 적게 사용하며, 필요한 프로세스 실행
- 최소한의 라이브러리와 도구만 포함
- Container의 생산 속도 빠름
Container Image
- Container 실행에 필요한 설정 값
- 상태값 x, Immutable(불변)
- Image를 가지고 실체화 -> Container
- 이미지가 저장되는 저장소 -> Docker hub
- 이미지를 사용할 수 있는 컨테이너 서버 -> Docker Host
- Local Registry를 가지고 있음
- 각 이미지가 가진 설정에 맞는 컨테이너를 생성 해 사용 할 수 있음
- 공개된 포트를 통해 외부에서 그 포트를 사용해 서비스를 사용 할 수 있음
Dockerfile
- Docker Image를 생성하기 위한 스크립트 파일
- 자체 DSL(Domain-Specific language) 언어 사용 -> 이미지 생성과정 기술
- 커맨드 명령어(ex.FROM) [옵션] 의 구성을 가지고 있음
- EXPOSE - 외부에 공개된 포트
'Web > Docker' 카테고리의 다른 글
Docker Container (0) | 2021.09.19 |
---|