도커(Docker)란 ?

연이·2022년 10월 12일
1

도커(Docker)

목록 보기
1/1

🔍 도커(Docker)란 ?

도커는 리눅스 컨테이너 기술을 기반으로 한 일종의 오픈 소스 컨테이너화 플랫폼이다.

가상화란 물리적 자원인 하드웨어를 효율적으로 활용하기 위해서 하드웨어 공간 위에 가상의 머신을 만드는 기술이고

리눅스 컨테이너란 필요한 라이브러리와 애플리케이션을 모아서 마치 별도의 서버처럼 구성한 것을 말한다. 컨테이너를 이루는 네트워크 설정, 환경 등의 시스템 자원은 각 컨테이너가 독립적으로 소유하고 있다.

이를 통해서 개발자는 애플리케이션을 컨테이너로 패키징 할 수 있다.

참고로 리눅스 컨테이너는 예전부터 사용되어졌지만 도커가 개발된 후로부터 최근 활발하게 사용되고 있다고 한다. 도커는 리눅스 컨테이너를 다루는 도구 중의 하나이며 다른 도구들도 있지만 대부분 도커를 사용한다고 알고 있으면 된다 !

✏️ 도커 컨테이너와 가상머신의 차이

사진 출처 https://simroot.tistory.com/13

  가상 머신은 Hypervisor을 이용해 하나의 호스트Os에서 여러개의 OS를 사용하는 방법이며 위의 사진처럼 GuestOS를 하나씩 설치하는 구조이다. 이처럼 가상머신은 하나의 독립된 커널 공간을 가진 완전한 컴퓨터를 생산하는 식의 환경을 구성한다는 특징이 있다. 그렇기 때문에 용량이 무겁다는 단점이 있다.

  컨테이너는 사용자 공간에서 분리된 프로세스로 실행된다는 의미를 가진다. 그렇기때문에 가상머신보다 메모리 공간을 적게 차지하고 더 많은 애플리케이션을 처리할 수 있다. 장점을 3개로 나누자면 아래와 같다.

컨테이너의 주요 장점 ⚡️

1. 경량의 무게

  • 가상머신과 달리 전체 OS인스턴스와 Hypervisor의 페이로드를 전달하지 않기 때문에 하드웨어 용량을 보다 잘 활용하며 구동 시간이 보다 신속하다.

2. 리소스 효율성 향상

  • 컨테이너를 사용하는 경우 VM을 사용할 수 있는 동일 하드웨어에서 애플리케이션의 다수의 사본을 여러 번 실행할 수 있다 . 그만큼 클라우드 비용이 절감된다.

3. 개발자 생산성 향상

  • 가상 머신과 비교했을때 컨테이너는 보다 빠르며 보다 간편한 배치, 프로비저닝 및 재시작이 가능하다.

    주요 장점은 https://www.ibm.com/kr-ko/cloud/learn/docker 을 참조하였다.

0개의 댓글