728x90
도커(Docker) 등장 배경
다양한 서버를 관리하고 운영하는 일은 쉬운 작업이 아니다.
시스템 환경, 방화벽, 권한, 필요 유틸 및 프로그램 설정 등 서버에 필요한 설정을 한다면 대부분의 IT 담당자들은 야근 작업이 필수일 것이며, 이렇게 작업을 한다해도 순조롭게 진행되지는 않는다.
OS버전문제, 유틸간의 충돌문제 등 다양한 문제가 발생하게 된다.
이런 서버 관리 방식의 변화가 필요했고, 이를 해결하기 위해 도커(Docker)가 등장하게 되었다.
도커(Docker) 정의
리눅스 컨테이너(Linux Container) 기반의 오픈소스(Opensource) 가상화 플랫폼이다.
도커(Docker) 의 주요 특징
- 사실상(de-facto) 업계 표준
- MSA(Micro Service Architecture)의 단점인 관리의 복잡성을 해결해주기 위한 Container 지원
- 어플리케이션 실행환경을 코드로 작성가능
- OS를 공유, 격리화하여 관리할 수 있음
- 다양한 프로그램(Program)과 실행환경을 컨테이너로 규격화, 배포, 관리
- 규격화된 프로그램은 다른 환경에서도 빠르게 실행 가능
도커(Docker) 구조
출처 : https://www.docker.com/resources/what-container/
도커는 컨테이너 기반으로 독립적인 실행환경을 구성한다.
컨테이너와 가상머신(Virtual Machine)과의 차이점을 알아보자.
1) 가상머신(VM : Virtual Machine)
-Hypervisor 기술을 기반으로 컴퓨터 인프라 리소스(CPU, MEMORY)들을 VM별로 배분하고, VM별 독립적인 GuestOS를 가지며 독립적인 환경을 제공한다.
- OS단위 가상화
- VM 종류에는 VirtualBox, VMware 등이 있음.
- 개발환경이나 사용자 환경을 이미지로 저장, Host OS 위에 Guest OS를 올려 운영하는 방식
- 하드웨어를 가상화하므로 컨테이너 기술보다 무겁다.
2) 컨테이너(Container)
- 어플리케이션 단위 가상화
- 리눅스 컨테이너(LXC)를 이용한 기술
- Host OS 자원 공유
- 어플리케이션 격리성 제공하므로 가상머신보다 많이 가벼움
728x90
'IT > 도커' 카테고리의 다른 글
도커 이미지(Image)에 대한 이해와 설명 (0) | 2022.12.30 |
---|---|
도커(Docker)와 Linux Container(LXC) 차이점, 비교 (0) | 2022.12.30 |
도커(Docker) 컨테이너 라이프사이클(Container Lifecycle) (0) | 2022.12.29 |
댓글