Docker 개념

nichol·2022년 6월 22일
0

Docker

목록 보기
1/2

Docker 란?

  • 리눅스 기반의 가상화 컨테이너 기술
  • 초기에는 가상화머신에서 출발해서 가상화 컨테이너 기술로 발전

가상화머신이란?

  • 하드웨어 기술이 발전함에 따라 잉여자원이 발생하고 그 자원을 나눠서 사용하는것으로 출발
  • 프로그램이 하나 구동할때 필요한 요소는 프로그램, 하드웨어 이둘을 이어주는 커널이 필요하다.
  • hostOS위에 가상머신을 올려 여러개의 OS를 사용하니 가상머신에서 하나의 프로그램을 구동할때 가상하드웨어부터 가상커널등을 만드는데쓰는 자원소비가 상당했다.
  • 그래서 프로그램구동에 필요한 최소한의 자원을 제외하고 HOST와 연결부터 필요한 커널, 하드웨어 할당 등을 도커가 처리해주고 도커 위에 프로그램 단위로 하나의 이미지를 만들어 컨터이너안에서 구동하는 기술을 가상화컨테이너 기술이라고한다.

왜 리눅스 일까?

  • 도커는 다른말로 리눅스기반의 컨테이너 가상화 기술이라 부른다.
  • 근데 왜 리눅스일까.
  • 첫번째이유 : 무료이다.

  • 두번째이유는 아래와 같다.

  • 유닉스개열의 OS는 크게 3가지로 분류된다.
    - macOS, windows, Linux
  • 유닉스는 각 프로그램마다 user아이디를 생성해주고 거기에 권한을 일일일 설정해서 사용한다. 하지만 이러한 특징은 windows는 삭제, macOS는 있기는 하지만 사용되지않고, 리눅스만 그 특징을 그대로 이어왔다.
  • Docker는 각 이미지, 즉 프로그램별로 최소한의 구동을 하기위해 각각에 이미지마다 별도의 계정들을 생성하고 권한을 주기위해서는 리눅스밖에 없는것이다.
profile
WEB Developer

0개의 댓글