Docker

docker-logo-loggedout

최근 2015년 주목할 IT 신기술 등의 기사를 보면 Docker 라는 이름을 자주 볼 수 있는데요. Docker 가 무엇인지 알아보는 시간을 갖도록 하겠습니다. Docker 는 리눅스 컨테이너 가상화 솔루션의 상품명입니다. VM ware 같은 일종의 데스크탑 가상화 기술 이라고 볼 수 있는데요. 그렇다면 기존 제품들과 어떤 차이가 있기에 최근에 각광을 받고 있는 것일까요?

기존의 데스크탑 가상화 애플리케이션들은 대부분 하이퍼바이저(hypervisor) 기반의 가상화 기술을 활용해왔습니다. 즉, 하드웨어에서 직접 실행되는 호스트 OS 위에 하이퍼바이저가 실행되고 하이퍼바이저가 하드웨어의 자원을 활용하여 가상의 하드웨어를 구성하면 가상의 하드웨어 위에 게스트 OS 를 설치하는 방식입니다. 이러한 방식은 게스트 OS 가 하드웨어를 직접 접근하지 못하는 구조적인 특성 덕분에 게스트 OS 위에 설치된 애플리케이션이 하드웨어 자원을 효율적으로 활용하는데에는 한계가 있습니다.

Docker-Arch

반면에 Docker 에는 하이퍼바이저가 없습니다. 대신에 Docker 가 중간에서 “컨테이너”라는 독립적인 런타임 환경을 호스트 OS의 커널과 연결시켜 주는 구조입니다. 애플리케이션 입장에서는 기존처럼 가상화된 하드웨어 자원이 아닌 실제 하드웨어에 접근하기 때문에 성능적인 측면에서 상당한 효과를 볼 수 있고, 배포 측면에서는 기존의 게스트 OS를 포함한 가상머신 이미지에 비해 훨씬 가벼운 컨테이너를 배포하면 되기 때문에 편리합니다.

개발자들이 Docker 에 큰 관심을 보이는 이유는 기존의 애플리케이션 배포나 개발환경 구축과 같은 번거롭고 비생산적인 작업에서 보다 자유로워질 수 있기 때문입니다. 기존에 애플리케이션을 배포하려면 서버에 웹서버, WAS, DB서버, 애플리케이션 등을 설치하고 설정해야 했지만 Docker 를 사용하면 이미 설치가 완료된 컨테이너를 서버에 배포하기만 하면 됩니다. 개발환경을 구축할 때도 개발자 각자 개발환경 세팅하는데 시간을 소모할 필요 없이 적절한 컨테이너를 받아서 실행해주기만 하면 동일한 개발환경이 보장됩니다.

아마존, 구글, 레드햇 등 앞장서서 지원에 나서고 있기 때문에 최근 많이 사용되는 AWS 등의 클라우드 서버에 컨테이터를 올릴 수도 있고 해당 컨테이너를 그대로 로컬로 가져와서 동일한 개발환경을 구축할 수도 있습니다. 현재 Docker 는 리눅스 LXC 컨테이너를 기반으로 구현되어 있기 때문에 리눅스에서만 사용이 가능하지만, MS 에서 윈도우에서도 Docker 가 동작할 수 있도록 지원을 하고 있다고 합니다.

8 thoughts on “Docker”

  1. Hello

    NOT SATISFIED WITH YOUR HOSTING ? GET A NEW ONE for synology.me

    Check Out Our Coupons for This Month & Get Your Domain, Hosting and SSLs For Less!
    Namecheap Offers Amazing Deals That Save You Money Across Our Product Range!
    Best Value Web Products. 20 Years Serving You. Free WhoisGuard. #1 for Value Vs. Others.

    Check Out Our Coupons for This Month => https://zeep.ly/M4Zol

    Thanks, Barney Shropshire
    If you no longer wish to hear from us, please reply this email.

  2. Depending on yourself to make the decisions can really be upsetting and frustrating. It takes years to build confidence. Its not the sort of thing that simply just happens.

  3. I wasn’t aware of some of the material that you wrote about so I want to just say thank you for posting, i am just a newbie in the internet business, need to learn a lot from the gurus.

Leave a Reply

Your email address will not be published. Required fields are marked *