Download - 도커 학습과 Boot2Docker
도커 학습과 Boot2docker
PYRASIS.COM 이재홍
2015.2.12
Docker Seoul Meetup #3 / February 14, 2015
이재홍
문서 이용 조건
2
교육 등의 비영리 목적으로만 사용해야 합니다. 사내 교육은 상관 없습니다. 장소 임대료, 회비, 참가비 등을 받는다면 영리 목적에 해당하므로 이 문서를 이용할 수 없습니다.
이재홍
만든 사람 소개
3
이재홍
웹사이트: http://pyrasis.com
저서: 가장 빨리 만나는 도커(Docker) 아마존 웹 서비스를 다루는 기술 윈도우 프로젝트 필수 유틸리티:
Subversion, Trac, CruiseControl.NET
가장 빨리 만나는 도커의 책 내용은 모두 웹사이트에 공개되어 있습니다.
이재홍
도커는 오픈소스 컨테이너 프로젝트
도커란 무엇인가? 도커
5
이재홍
리눅스 커널의
컨테이너 기능 사용
도커와 컨테이너 도커
6
이재홍
왜 컨테이너 기능을 사용하지?
도커와 컨테이너 도커
7
이재홍
가상화는 각종
성능 손실이 발생하기 때문
도커와 컨테이너 도커
8
이재홍
그래서 리눅스 커널의
Cgroups, namespaces 등을
사용하여 가상 공간을 생성
도커와 컨테이너 도커
9
이재홍
도커는 아직 리눅스 전용이다
도커와 컨테이너 도커
10
이재홍
응? Windows, Mac OS X에서도
쓸 수 있던데…
도커와 컨테이너 도커
11
Boot2Docker
이재홍
Boot2Docker는 Windows, Mac OS X에서
도커를 사용할 수 있게 해주는 도구
Boot2Docker Boot2Docker
13
이재홍
그건 어떻게 가능하죠?
Boot2Docker Boot2Docker
14
이재홍
일단 Windows와 Mac OS X 커널은
리눅스의 cgroups, namespaces 같은
기능을 제공하지 않음
Boot2Docker Boot2Docker
15
이재홍
Boot2Docker는 VirtualBox
가상 머신 안에 리눅스를 설치하고
도커를 실행
Boot2Docker Boot2Docker
16
애플리케이션 A 애플리케이션 B
실행 파일/라이브러리 실행 파일/라이브러리
Windows, Mac OS X
컴퓨터
도커 엔진
VirtualBox Boot2Docker
도커 학습과 Boot2Docker
이재홍
컴퓨터 데스크탑 환경에서
Windows와 Mac 사용자가 대다수
Boot2Docker 도커 학습과 Boot2Docker
18
이재홍
자연스럽게
Boot2Docker를 설치하게 됨
Boot2Docker 도커 학습과 Boot2Docker
19
이재홍
Windows에서 Boot2Docker 도커 학습과 Boot2Docker
20
Windows에서는 디렉터리 구조가 확연히 달라서 별도의
환경이라는 걸 쉽게 알 수 있음
이재홍
문제는 Mac OS X
Boot2Docker 도커 학습과 Boot2Docker
21
이재홍
Mac OS X에서 Boot2Docker 도커 학습과 Boot2Docker
22
Mac OS X에서는 Mac OS X의 디렉터리가 그대로 표시됨
이재홍
Mac OS X에서는 도커가
바로 실행된다고 착각하기 쉬움
Boot2Docker 도커 학습과 Boot2Docker
23
(도커 클라이언트만 네이티브 바이너리, 도커 서버는 가상 머신 안에서 실행)
이재홍
하지만 VirtualBox를 실행해보면 Boot2Docker 가상 머신이 표시됨
VirtualBox 안의 Boot2Docker 도커 학습과 Boot2Docker
24
이재홍
Boot2Docker에서 컨테이너를 띄우고
호스트(Mac OS X) IP 주소로 접근
자주 착각하는 부분 도커 학습과 Boot2Docker
25
이재홍
boot2docker ip 명령으로 가상 머신의 IP 주소를 알아내야 함
Windows에서는 Git Bash에서 다음 명령 실행 $ boot2docker ip The VM's Host only interface IP address is: 192.168.59.103
Boot2Docker의 컨테이너로 접속할 때는 항상 가상
머신의 IP 주소를 사용
Boot2Docker ip 주소 확인 도커 학습과 Boot2Docker
26
이재홍
Mac OS X의 디렉터리를
데이터 볼륨으로 연결 시도
자주 착각하는 부분 도커 학습과 Boot2Docker
27
이재홍
이 부분은 요구하는 사람이 많아서 Boot2Docker 기능으로 추가됨
$ docker run -it -v /Users/pyrasis/data:/data ubuntu:14.04 /bin/bash
Mac OS X: /Users/<사용자 계정> 아래의 디렉터리에 연결
Windows: /c/Users/<사용자 계정> 아래의 디렉터리에 연결
Boot2Docker에서 데이터 볼륨 연결 도커 학습과 Boot2Docker
28
Mac OS X
$ docker run -it -v /c/Users/pyrasis/data:/data ubuntu:14.04 /bin/bash
Windows
결론
이재홍
결론 결론
Boot2Docker는 도커를 처음 접하는 사람한테는
그다지 적합하지 않음
이재홍
결론 결론
특히 Mac OS X에서는 각종 개념을 착각하기가 쉬움
이재홍
결론 결론
도커를 처음 접하는 사람들은 VirtualBox, Vmware에 리눅스를 설치하고
도커를 학습하는걸 권장
이재홍
결론 결론
리눅스 서버에 SSH로 연결해서 실습하는 것도 군더더기 없이 정확한 방법
향후 전망
이재홍
Windows와 도커 향후 전망
Windows 서버에서 cgroups, namespaces와 같은
API 지원 예정 (Windows 실행 파일 지원)
이재홍
Windows와 도커 향후 전망
Windows와 리눅스는 많은 부분이 차이가 있으므로 새로 학습해야 할지도…
이재홍
Mac OS X와 도커 향후 전망
Mac OS X의 Mach 커널에서 Cgroups, namespaces와 같은
API 지원은 아직… http://en.wikipedia.org/wiki/Comparison_of_operating_system_kernels
이재홍
도커에 대한 자세한 내용은...
38
도커에 대한 자세한 내용은 가장 빨리 만나는 도커를 참조해주세요. 책 내용은 모두 웹사이트에 공개되어 있습니다.
http://www.pyrasis.com/private/2014/11/30/publish-docker-for-the-really-impatient-book
Docker 개인 저장소 구축하기
Dockerfile 상세 설명
Docker로 애플리케이션 배포하기
Docker 모니터링하기
Amazon Web Services에서 Docker 사용하기
Google Cloud Platform에서 Docker 사용하기
Microsoft Azure에서 Docker 사용하기
Docker Hub 사용하기
Docker Remote API 사용하기
CoreOS 사용하기
Docker로 워드프레스 블로그 구축하기(MySQL)
Docker로 Ruby on Rails 애플리케이션 구축하기(MySQL, PostgreSQL)
Docker로 Django 애플리케이션 구축하기(Oracle, MySQL, PostgreSQL)
Docker 활용 시나리오
Docker 명령어 및 옵션 목록
감사합니다