리꾸므

[Docker] 특징 본문

발걸음/일지

[Docker] 특징

리꾸므 2023. 1. 13. 10:35

Docker의 구조와 성질

  • 환경을 격리할 수 있다.
    • 독립된 환경
      1. 프로그램을 여러개 띄울 수 있다.
      2. 똑같은 애플리케이션도 여러개 띄울 수 있다.
    • 이미지를 만들 수 있음
      1. 도커 레지스트리(도커 허브)
        • 이미지를 내려받기만 하면 된다.
          • 이미지를 직접 만들지 않아도 된다.
        • 교체하기 쉽다.
          • 업데이트가 쉽다.
          • 소프트웨어 교체가 쉽다.
      2. 이동이 편리함
        • 똑같은 컨테이너를 쉽게 만들 수 있다.
          • 환경 이동이 쉽다.
          • 개발환경을 배포하기 쉽다.
    • 커널이 없음
      1. 가볍다.
      2. 배포판을 바꿀 수 있다.

 

 

Docker의 장단점

  • 장점
    1. 한 대의 물리 서버에 여러 대의 서버를 띄울 수 있다.
      • 격리된 환경을 제공하므로 각각 안전한 상태로 실행되며 일반적인 서버에서 실행할 수 없는 조합도 가능하다.
      • 컨테이너에는 커널이 포함되지 않으므로 물리 서버의 운영체제에 의존하므로 하드웨어를 재현하는 가상화 기술에 비하면 압도적으로 가볍다.
    2. 서버 관리가 용이하다.
      • 컨테이너로 독립된 환경에 격리하므로 다른 소프트웨어에 영향을 끼치지 않는다.
      • 컨테이너 교체나 수정도 쉽기때문에 환경 이전도 간단하다.
      • 컨테이너 수정시 컨테이너에서 이미지를 만들고 이 이미지로 대량의 컨테이너를 생성할 수도 있다.
    3. 다루기 쉽다.
      • 명령 한줄로 서버 구축이 끝난다.
      • 명령어만 익히면 컨테이너를 쉽게 사용할 수 있다.
  • 단점
    1. 리눅스용 소프트웨어밖에 지원하지 않는다.
    2. 호스트 서버에 문제가 생기면 모든 컨테이너에 영향을 미친다.
    3. 컨테이너 하나를 장기간에 걸쳐 사용할 때는 그리 큰 장점이 없다. 이럴 경우 도커엔진이 단순한 오버헤드에 지나지않게 된다.

 

 

Docker의 주용도

  • 동일한 환경 구성
    • 팀원 모두에게 동일한 개발환경을 제공할 수 있다.
  • 새로운 버전을 테스트하기 좋다.
    • 격리된 환경과 손쉬운 컨테이너 사용으로 인해 테스트에 용이하다.
  • 동일한 서버가 여러대 필요한 경우
    • 독립된 환경으로 인해 한 대의 물리서버에서도 똑같은 서버를 여러개 만들 수 있다.