ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Docker 정리
    혼자서 공부하기/DevOps 2020. 7. 23. 00:28
    728x90
    반응형
    SMALL

    Docker?

    docker

    정의

    • 컨테이너 기반의 오픈소스 가상화 플랫폼

    AWS에서의 정의

    • 애플리케이션을 신속하게 구축/테스트/배포 할수 있는 소프트웨어 플랫폼
    • Docker는 소프트웨어를 컨테이너 라는 표준화된 유닛으로 패키징 하며, 이 컨테이너에는 라이브러리/시스템도구/코드/런타임등 소프트웨어를 실행하는 데 필요한 모든것이 포함됨
    • Docker를 사용하면 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있으며 코드가 문제없이 실행될 것임을 확신가능
    • Docker는 컨테이너를 위한 운영체제
      • 가상머신(VM)이 서버하드웨어를 가상화하는 방식과 비슷하게 (직접 관리해야 하는 필요성 제거) 컨테이너는 서버 운영체제를 가상화 시킴
    • Docker 작동 방식 : Docker는 코드를 실행하는 표준방식을 제공

    인터넷검색에서

    • 컴퓨터 안에 다른 공간과 분리된 '컨테이너'라는 가상의 공간을 만들어주는 프로그램
    • 컨테이너를 통해 여러 환경을 관리할 수 있게 해주고 같은 셋팅의 환경을 공유하는 일도 이미지 파일 하나만 공유

    Docker의 특징

    • 운영체제를 가상화하지 않은 컨테이너 기술인 만큼 VM에 비해 가벼움
      • VM을 포함 한대의 서버에 여러개의 서비스 구동 가능
    • 보안상, 서비스가 털리더라도 원래의 서버에 영향을 미치지 쉽지 않은 격리된 구조인만큼, 가상화의 장점을 상당부분 활용가능
    • VM과 달리 기존 리눅스자원(DISK/NETWORK 등)을 그대로 활용할 수 있어서 여러 서비스들을 한 서버에 넣어 돌리기 좋음
    • 리눅스 커널 2.6.32~431이상에서 지원
      • CentOS 기준 CentOS 6.5 이상 요구

    • Docker를 사용해야 하는 이유 ( 폭넓게 도입되었다는 것은 Docker를 사용할 수 있는 도구 및 사용 어플리케이션 EcoSystem이 강력하다라는 의미)
      • Docker를 사용하면 코드를 더 빨리 전달하고, 어플리케이션 운영을 표준화하고, 코드를 원활하게 이동하고 리소스사용률을 높여 비용절감 가능
      • Docker를 사용하면 어디서나 안정적으로 실행할 수 있는 단일 객체를 확보 가능
      • Docker의 간단한 구문을 사용해 완벽하게 제어 가능

    Docker 이미지?

    • 컨테이너를 정의하는 읽기 전용 템플릿
    • 이 이미지에는 코드에 필요한 라이브러리 및 종속성에 대한 정의를 비롯해 실행되는 코드가 포함됨
    • Docker 컨테이너는 인스턴스화된(실행되는) Docker 이미지

    Docker Swarm vs Kubernetes

    Docker Swarm Kubernetes
    Docker 에서 개발한 컨테이너 오케스트레이션 소프트웨어로 사용자가 직접 실행/관리 커뮤니티에서 유지관리

    Docker와 VM 의 차이

    • VM은 서버하드웨어를 가상화 (또는 직접관리할 필요성 제거)
    • 컨테이너는 서버 운영체제를 가상화
      • Docker는 컨테이너를 위한 운영체제 또는 런타임
      • 컨테이너를 실행하려는 각 서버에 Docker Engine이 설치되어 컨테이너를 구축/시작또는 중단하는데 사용할 수 있는 간단한 명령세트 제공

    Docker 설치

    • Mac

    https://docs.docker.com/docker-for-mac/install/

    • Windows :

    https://docs.docker.com/docker-for-windows/install/

    • Ubuntu

      sudo apt-get update
      sudo apt-get install docker.io
      sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
    • CentOS 6

       sudo yum install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
       sudo yum install docker-io 
    • CentOS 7

       sudo yum install docker
       sudo service docker start
       sudo chkconfig docker on
    728x90
    반응형
    LIST

    댓글

Designed by Tistory.