문서의 이전 판입니다!


Docker

inlinetoc

Docker는 VMwareVirtualbox 등의 가상화 기술과 비슷하다. 이런 가상화 소프트웨어는 주로 OS를 통째로 돌리는데 사용을 했다. 하지만 Docker는 가상화 소프트웨어와는 달리 OS를 통째로 가상화하지 않고, 실행 환경만 분리하여 제공함으로써 가볍고 효율적으로 작동한다. (출처)

https://www.docker.com

리눅스의 LXC라는 컨테이너 기술을 좀 더 편하게 만든 프로젝트가 Docker 임.

VMware, Virtualbox, 페러렐즈 같은 것은 맥이나 리눅스 위에서 윈도우를 설치하고 인터넷 뱅킹 등을 할 때 많이 사용하는데 Docker는 이런 용도로는 쓸 수가 없다.

도커의 판본은 커뮤니티 버전의 docker-ce와 엔터프라이즈 docker-ee로 나뉜다. 우분투에서는 겹치는 이름을 피하기 위해 패키지 이름이 docker.io였다.

설치하려면 docker-ce를 설치한다.

장점

다른 가상 머신에 비해서 성능 손실이 매우 적기 때문에 서버에서 유용하게 활용된다. 예를 들면 아파치+PHP+웹 소스를 Docker 이미지로 묶어 놓은 뒤 서버에서 이미지를 컨테이너로 실행만 하면 된다. 서버 세팅을 이미지로 만들어서 반복 작업을 자동화하는 것이다. 물론 Docker 이미지는 인터넷으로 주고 받을 수 있다.

특히 요즘 많이 사용되는 클라우드에서 가상 서버는 시간당 돈을 내기 때문에 서버를 적게 쓰는게 유리함. 그래서 Docker로 이미지를 만들어 놓은 뒤 사용량이 많을 때만 서버를 띄우고, 사용량이 줄어들면 서버를 삭제하는 Auto Scaling에 적합함.

리눅스를 사용하다 보면 소스를 컴파일해서 설치하거나, 패키지를 설치할 때가 많은데요. 이게 점점 쌓이면 컴퓨터가 떡이된다. 지우는 것도 쉽지 않고 설정해놓은게 꼬이면 아주 귀찮아진다. 그래서 서버서 설정이나 개발 환경을 Docker에서 테스트해보는 것이다. 잘되면 이미지로 만들고 안될때는 삭제하면 그만임.

VMware, VirtualBox 등의 가상 이미지와 스냅샷은 용량이 크지만, Docker는 몇 십메가에서 몇 백메가 수준임. 원한다면 10메가 이내로 이미지를 만들 수도 있다.

단점

OS자체를 올리는 것이 아니기 때문에 윈도우 컨테이너를 지원하지 않는다. 맥 혹은 리눅스 → 도커 → 윈도우 이런 용도로는 쓸 수가 없다.

윈도우용 도커는 윈도우에 Virtualbox를 올리고, 이것에서 도커를 실행한다;(눈물)

MS에서 차기 윈도우 서버에 Docker를 지원하겠다고 발표를 했다. 이렇게 되면 윈도우(호스트)-윈도우(컨테이너) 모양으로 실행할 수 있을 것이다.

설치

키추가

  apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

리포추가

sudo nano /etc/apt/sources.list.d/docker.list

원래 있던 것을 지우고 아래의 주소 입력

# Ubuntu Trusty 
deb https://apt.dockerproject.org/repo ubuntu-trusty main

시작

sudo service docker start

https://subicura.com/2017/01/19/docker-guide-for-beginners-2.html

역링크