[Infra] Docker란?

iamchaeeon·2024년 6월 3일

Docker란?

독립된 환경을 만들어서 하드웨어를 효율적으로 활용하는 기술

  • 컨테이너 기반의 오픈소스 가상화 플랫폼..!!
  • 컨테이너에 리눅스 application을 격리 기술을 사용해서 더 쉽게 컨테이너로 실행하고 관리할 수 있게 해주는 오픈소스 프로젝트이다.
  • docker 기술은 linux커널 등의 기술을 활용하여 프로세스를 분리함으로서 독립적으로 실행할 수 있도록 한다.
  • 여러 프로세스나 애플리케이션을 서로 개별적으로 실행하여 인프라를 더 효과적으로 활용하고 개별 시스템을 사용할 때와 동일한 보안을 유지할 수 있도록 한다.

(이게 다 뭔말이지?? 싶지만 실습해보고 더 읽어보자 .. 곧 감이 잡힐겨)

Virtual Machine vs. Docker??

??? : 그럼.. 걍 가상머신 같은건가??? → 반은 맞고 반은 틀리다.
virtual machine vs. docker

가상머신은..

  • OS위에 존재하는 Hypervisor 를 통해 VM을 생성하고 구동하고 사진에 보이는 것처럼 각각의 VM요소마다 OS가 존재한다.
  • 그래서 굉장히 무겁고 resource를 많이 잡아먹는다.
  • 그치만 완벽하게 Host와 분리된다.

Docker컨테이너는?

  • 각 컨테이너는 OS를 포함하지 않는다.
  • docker-engine 위에 application 실행에 필요한 바이너리만 올라간다.
  • 그래서 하드웨어 가상화 기술보다 훨씬 가볍다.

Docker의 특징이자 장점!

개발 과정에서 다른 라이브러리와 충돌하는 것을 방지하기 위해 격리된 환경이 필요할 때, 매우 유용하다. 환경종속성이슈에서 벗어날 수 있음!

  1. 확장성/이식성이 매우 뛰어나다!
  • docker 가 설치되어있는 환경이라면 어디에서든 컨테이너를 띄울 수 있다
  • 특정 회사, 서비스에 종속적이지 않다
  • 개발 서버, 테스트 서버 생성이 매우 간편하다!
  1. 표준성
    • 도커를 사용하지 않는 경우 ruby, nodejs, go, php로 만든 서비스들의 배포 방식은 모두 다 다르다.
    • 컨테이너라는 표준으로 서버를 배포하므로 모든 서비스들의 배포과정이 동일해진다.

++ docker의 첫 등장..!

The future of Linux Containers (youtube.com)

  • 어렵던 자원 격리 기술을 사용하기 쉽게 만들어준 도커의 첫등장은 컴퓨터 역사에서 큰 사건이라고 평가된다고 한다..

docker 등장 sceneㅋㅋㅋ

References

https://velog.io/@markany/도커에-대한-어떤-것-1.-도커란-무엇인가

https://velog.io/@gyumin_2/Docker란-무엇인가가-무엇인지-모르겠다

0개의 댓글