Docker(1)

SW고구마·2021년 11월 3일
0

Docker?

도커는 컨테이너에 기반해 애플리케이션을 구축하는 소프트웨어 플랫폼이다.
도커를 바탕으로 개발자는 소프트웨어를 이미지로 패키징 해 '한번 구축하면 어디서나 실행할 수 있는(Build once and run Anywhere) 보장된 환경을 제공할 수 있다.

Container 와 VM(Virtual Machine)의 차이점

VM(virtual Machine)

  • 하드웨어를 가상화 => 소프트웨어로 구현된 하드웨어
  • OS위에 가상의 하드웨어(=컴퓨터)를 만들고 그 위에 OS를 설치하고 그 위에 프로세스를 만듬

Container

  • OS에서 지원하는 기능을 사용 => 같은 커널을 사용하기 때문
  • 격리된 환경에서 프로세스를 실행
  • 도커 컨테이너는 OS와 통신하면서 같은 커널을 활용해 프로세스를 수행
  • 즉 하드웨어의 가상화없이 격리된 환경에서 실행되는 프로세스라고 정의할 수 있음
  • 컨테이너는 일반적으로 메가바이트 단위로 특정 작업(마이크로 서비스)을 수행하기 위해 필요한 환경만을 구축해 이미지로 패키징해 사용

컨테이너가 필요한 이유?

  • 컴퓨터의 환경이 보편적이 않기 때문 => 상황에 따라 환경이 다름
    따라서, 동작이 보장되어 배포된 이미지를 바탕으로 어느 환경에서나 사용가능
  • 이미지로 만들어 공유되고 여기저기서 사용이 가능하기 때문에 재현성이 뛰어남
profile
하루하루 조금씩이라도

0개의 댓글