[docker] docker 란?

HyunDong Lee·2021년 4월 4일
0

docker

목록 보기
2/8
post-thumbnail

A set of platform as a service products that uses OS-level virtualization to deliver software in packages called containers

  1. Streaming server에 container/특정 stream을 구글 CDN에서 가능하게 한다.
  2. Cloud computing에서 중요한 기술

Light in size compared to Virtual machine(GB -> 50MB). 여러 작업의 throughput을 개선 시켰다.

VM과 Container의 차이

Vm

  • 메모리 과도 점유
  • Boot up time 느림
  • Scale up 어려움
  • portability 제한
  • VM 사이에서 Data volume 공유 불가능
  • 효율이 낮음
    Container
  • 훨씬 적은 메모리 점유
  • Boot up time 빠름
  • container engine을 사용하여 성능 저하 적음
  • scale up 쉬움
  • platform에 좌우되지 않음
  • Docker volume을 여러 container들이 공유
  • 높은 효율

Docker Architecture

  • docker engine은 사용자의 컴퓨터에 설치하여 docker container를 build하고 run하는데 사용하는 소프트웨어
  • Client-server
  • REST API
  • docker client는 docker command를 실행하며, 이러한 명령들은 REST API를 통해 docker daemon에거 전달한다.
  • Docker daemon은 전달받은 명령에 따라 os의 기능을 사용하여 container를 실행함
  • REST API = HTTP 프로토콜로 두 SW사이에서 통신하도록 제공된 API

0개의 댓글