TIL.Docker. <22.07.02>

강형원·2022년 7월 2일
0

Docker

목록 보기
1/3
post-thumbnail

오늘 해야 할 일

  • Docker 강의 듣기
  • TS 강의 듣기

오늘 배운 것

  • 11) Docker의 구성요소

    docker의 구성요소 (출처: https://docs.docker.com/get-started/overview/)

    • docker image & container
      • image는 어플리케이션을 실행하기 위한 필요한 모든 것이 생성되어 있는 파일입니다.
      • container는 image를 사용하여 실행한 것입니다. 프로세스의 독립성을 보장하기 위해서 네트워크나 저장소가 분리되어 있습니다.
    • docker registry
      • docker image를 저장하는 공간
    • dockerd
      • docker API requests를 받아서 docker object(image, container등)를 관리
    • docker client
      • 사용자가 docker를 사용하기 위해서 사용하는 cli
  • 12) 기존 기술과 다른 부분

    • 각각의 application을 원하는 환경에서 실행하는 기술이 예전에는 없었나?

      • 비슷한 것으로 가상 머신(VM) 기술이 있었습니다.

        Virtual Machine과 docker의 차이

    • 기존 가상화 기술(VMware, VirtualBox) 은 하이퍼바이저를 사용해서 여러개의 운영체재를 하나의 호스트에서 생성해 사용하는 방식

      • 시스템 자원을 가상화하고, 공간을 생성하는 작업은 하이퍼바이저를 거치기 때문에 성능의 손실이 발생합니다.
      • OS까지 포함해야하므로 이미지의 크기 또한 커집니다.
      • 완벽한 OS를 생성할 수 있다는 장점은 있지만 성능 손실이 있음
    • 도커는 리눅스의 자체 기능인 chroot, namespace, cgroup기술을 사용해서 프로세스 단위의 격리 환경을 만들기 때문세 성능 손실이 거의 없습니다.

      • OS를 따로 가지고 있는 것이 아니기 때문에 이미지의 크기도 매우 작아집니다.
      • host OS의 kernel을 공유해서 사용하므로 성능 손실이 거의 없습니다.
profile
사람. 편하게.

0개의 댓글