Enterprise Docker
PA팀/황상철, 2015.326
Agenda
• 도커는 무엇인가
• 도커의 형제들
• 도커와 친구들
• 도커의 경쟁자
• d4 프로젝트
도커는 무엇인가
Introductions to Docker
도커(Docker)
리눅스컨테이너 기술을 이용해 어플리케
이션 패키징,배포를 지원하는 오픈소스 프
로젝트
* 경량, 가상화
도커(Docker)
PyCon2013에서 Solomon Hykes의
‘Hello World’ 데모를 통해 처음 공개
* The future of Linux containers
$ docker run busybox echo ‘Hello World’
docker run busy box echo
‘Hello World’
• 로컬에 busybox 이미지 확인
• 없으면 dockerhub에서 다운로드
• busybox 이미지로 새 컨테이너 생성
• 컨테이너 실행
• TTY로 ‘Hello World’ 출력
• 출력된 결과를 유닉스 소켓을 통해 클라이언트로 전송
1억 다운로드
https://blog.docker.com/2015/01/docker-project-2014-a-whirlwind-year-in-review/
특징1: 사용하기 쉽다
리눅스 컨테이너는 소개된지 10년이 지난
기술이지만 설정이 복잡하고 사용하기 어
려워 널리 사용되지 못했음.
특징2: 가볍다
VM에 비해 이미지 파일 크기가 작아서 빠
르게 이미지를 만들고 실행할수 있다.
도커 아키텍처
Docker Host OS
리눅스 커널버전 3.8.0x86_64 이상으로
Device Mapper가 설치된 환경
• Ubuntu, CentOS, RHEL
• CoreOS
• Debian, SUSE, Fedora, etc
도커의 형제들
Docker Ecosystems
Docker Hub
도커 이미지를 공유하는 공개 저장소.
github 계정으로 사용가능. 검색 지원.
공식 이미지 100, 공개 이미지 45,324
https://hub.docker.com
Docker Registry
비공개 도커 이미지 저장소를 만들수 있게
해주는 오픈소스.
도커 컨테이너로 실행, 인증기능 X
https://github.com/docker-registry
Swarm
도커 클러스터를 구축해준다. 베타
https://github.com/docker/swarm
Docker Compos
복잡한 어플리케이션을 도커로 실행할때
여러 컨테이너를 docker-compose.yml로
정의하고 한번에 실행한다.
https://github.com/docker/compose
docker-compose.yml
web:
build: .
links:
- db
ports:
- "8000:8000"
db:
image: postgres
KITEMATIC
맥에서 도커 컨테이너를 쉽게 만들수 있도
록 해주는 UI 도구
https://kitematic.com
docker machine
PC,클라우드 서버,가상서버를 도커 호스트
로 구축해준다.
https://github.com/docker/machine
도커와 친구들
Docker Opensources
Panamax
도커 컨테이너 관리도구
• RoR, CoreOS, github 기반
• Template 개념, 편리한 UI
http://panamax.io
Panamax
Panamax
spotify/helios
도커 이미지,컨테이너 라이프사이클 관리
• Java, CLI
• Job 단위로 처리, 스케쥴링 X
https://github.com/spotify/helios
spotify/helios
masterclient docker host #1agent
docker host #2agent
docker host #nagent
zk#1
zk#2 zk#3
kuberntes
멀티 호스트 기반의 컨테이너 어플리케이션
관리 시스템
• go, GCE만 지원
• 모니터링,네트워킹,스케쥴러 지원
http://kubernetes.io
CoreOS
Docker 호스트에 특화된 리눅스
• 최소화된 메모리 사용(40%)
• systemd, etcd, fleet
• CoreUpdate(상용)
https://coreos.com/
도커의 경쟁자
Docker Competeter
• OpenVZ(openvz.org)
• Imctfy(google/Imctfy)
• Warden(cloudfoundry/warden)
coreos/rocket
• 컨테이너 이미지,런타임,디스커버리
d4 Project
Docker Infra Service
Architecture
Client Server Docker Hosts
d4-ui
d4-logs
d4-api docker-host #1
docker-host #2
docker-host #3
registry
Page Flow
login
main image
 search New

Enterprise Docker