내용 출처 : https://subicura.com/2017/01/19/docker-guide-for-beginners-1.html <subicura님 블로그>

http://pyrasis.com/docker.html       <thebook.io - 가장 먼저 배우는 도커>
https://tech.ssut.me/2017/08/15/what-even-is-a-container/ <Tech-ssut>


저번 포스팅에서는 도커는 무엇인지 간략하게 알아보았습니다.


이번 포스팅에서는 Docker를 설치하고 컨테이너와 이미지를 사용해보는 것 위주로 진행하겠습니다.


일단 도커의 동작원리에 대해 다시 한번 알아 보겠습니다.


1. 도커 동작원리


도커는 기본적으로 Linux 커널을 기반으로한 Docker Engine으로 작동합니다.

도커와 가상머신(hypervisor)의 차이는

가상머신(hypervisor)은 OS와 커널을 전체 가상화시켜 동작합니다.

도커는 file system 정도만 가상화 시켜 동작하되 host PC의 kernel을 공유하여 작동합니다.

도카 1.11 버전 이후 동작하는 구조는 위와같습니다.

Docker Engine과 containerd 가 분리된 덕분에 
Docker Engine을 재시작해도 container를 재시작하지 않고 바로 사용할 수 있게 되었습니다.





2. 도커 설치 및 이용


  • 리눅스에서 설치하기(우분투)

$ sudo wget -qO- https://get.docker.com/ | sh

sudo 권한을 주어 자동설치 스크립트로 받을 수 있으며


또는 apt-get install docker.io 로 설치가능합니다.

  • MAC 또는 Windows에서 docker 설치하기

    윈도우용 도커(docker for windows) : https://store.docker.com/editions/community/docker-ce-desktop-windows 

    MAC용 도커(docker for mac) : https://store.docker.com/editions/community/docker-ce-desktop-mac

    docker 공식 사이트인 docker store에서 제공하는 docker for (windows / mac)을 받아서

    자신이 원하는 간단한 설정 ( 가상 환경의 메모리, 그래픽, 네트워크 설정 등 ) 을 마친뒤 

    간단하게 설치가 가능합니다.


  • Docker for windows 사용하기
        < 현재 제가 사용하고 있는 os가 윈도우이기 때문에 윈도우로 설명하겠습니다.>

<설치가 완료된 후에 System Tray 창에 있는 도커 아이콘 우클릭 시 나오는 메뉴>



일단 저는 라이트 유저를 위해 docker에서 공식적으로 제공하는 Kitematic 이라는 docker GUI를 소개하겠습니다.

  • Kitematic 사용법

    1. docker for windows를 실행시킨 후에 로그인

    2. 위의 이미지에서 보이는 Kitematic을 누르면 Kitematic 다운로드 사이트로 이동합니다.

    3. 다운받은 Kitematic 설치파일 실행

    4. 설치가 완료된 Kitematic 을 실행



    5. 사용하기 원하는 컨테이너를 검색하거나 Recommended 목록에서 찾는다.

    6. 컨테이너 이미지의 오른쪽 하단의  ... 박스를 통해 네트워크 설정 및 버전 설정을 확인한다.

    7. CREATE 버튼을 눌러 컨테이너를 실행시킨다.


이렇게 아주 쉽게 컨테이너를 사용할 수 있습니다.




'프로그래밍 > 도커(docker)' 카테고리의 다른 글

docker 입문하기  (2) 2018.04.04



이미지 출처 : https://subicura.com/2017/01/19/docker-guide-for-beginners-1.html <subicura님 블로그>

http://pyrasis.com/docker.html       <thebook.io - 가장 먼저 배우는 도커>




도커(Docker)는 컨테이너 기반의 오픈소스 가상화 플랫폼 입니다.

OS를 가상화하는 VM과는 달리 KVM, Xen 등의 방식으로 성능향상이 이루어졌고 (게스트 os 설치 안함)

여러 개의 컨테이너 실행시 서로 영향을 끼치지 않고

독립적으로 실행되어 가벼운 Virtual Machine 느낌으로 사용할 수 있습니다.


실행중인 컨테이너는 보통 linux(ubuntu, centOS)기반의 이미지로 만들어지기 때문에

Bash 명령어 입력(apt-get, yum 등)이 가능합니다.

가상머신에 비해 이미지 (컨테이너) 생성 및 실행 시간이 빠른 장점이 있습니다.

도커는 컨테이너 + 이미지로 구성되어있습니다.



<AWS(Amazon Web Service)에서 소개하는 Docker의 장점>


    도커에서 가장 중요한 개념은 컨테이너와 이미지라고 생각합니다.

    이미지 = 컨테이너실행에 필요한 파일과 설정 값등을 포함하는 것 (상태값을 가지지않음, 변하지않음)

    컨테이너 = 이미지를 실행시킨 상태 , 변하거나 추가적으로 생성된 값은 컨테이너에 저장

    컨테이너의 상태를 변경하거나 삭제시 이미지에는 영향 없음(변화 x)


    한 서버에 여러 개의 컨테이너를 실행시킬 수 있으며

    새로운 서버 추가시, 필요한 이미지를 받아서 컨테이너를 돌려주면 의존성 파일 문제가 쉽게 해결됩니다.

    Ex) Ubuntu, MySQL, Gitlab(ruby,go,database,reids..)




    도커의 이미지는 레이어 저장방식을 채택했습니다.

    레이어 저장방식을 사용함으로써 버전관리가 용이해졌고 업데이트 시 새롭게 추가된 내용만 받아오기 때문에

    기존(가상머신)의 이미지를 통째로 받아와 실행하던 방식에 비해 훨씬 빠르고 관리하기가 편해졌습니다.

    도커 설치 및 이미지 관리는 다음 포스트에서 다뤄보겠습니다.



'프로그래밍 > 도커(docker)' 카테고리의 다른 글

도커(docker) 설치 및 활용하기  (1) 2018.04.04

+ Recent posts