SlideShare a Scribd company logo
1 of 39
Download to read offline
도커 학습과 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
컴퓨터
도커 엔진
VirtualBoxBoot2Docker
도커 학습과 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 명령어 및 옵션 목록
감사합니다

More Related Content

What's hot

Appium & Robot Framework
Appium & Robot FrameworkAppium & Robot Framework
Appium & Robot FrameworkFurkan Ertürk
 
Introduction to Firebase
Introduction to FirebaseIntroduction to Firebase
Introduction to FirebaseFarah Nazifa
 
Docker란 무엇인가? : Docker 기본 사용법
Docker란 무엇인가? : Docker 기본 사용법Docker란 무엇인가? : Docker 기본 사용법
Docker란 무엇인가? : Docker 기본 사용법pyrasis
 
Firebase - A real-time server
Firebase - A real-time serverFirebase - A real-time server
Firebase - A real-time serverAneeq Anwar
 
Introduction to red hat agile integration (Red Hat Workshop)
Introduction to red hat agile integration (Red Hat Workshop)Introduction to red hat agile integration (Red Hat Workshop)
Introduction to red hat agile integration (Red Hat Workshop)Judy Breedlove
 
Headless - the future of e-commerce
Headless - the future of e-commerceHeadless - the future of e-commerce
Headless - the future of e-commerceJamie Maria Schouren
 
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...Simplilearn
 
Docker: From Zero to Hero
Docker: From Zero to HeroDocker: From Zero to Hero
Docker: From Zero to Herofazalraja
 
ASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bitsASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bitsKen Cenerelli
 
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...Edureka!
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentationJohn Lynch
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To JenkinsKnoldus Inc.
 
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container DayAmazon Web Services Korea
 
Kubernetes From Scratch .pdf
Kubernetes From Scratch .pdfKubernetes From Scratch .pdf
Kubernetes From Scratch .pdfssuser9b44c7
 
쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.
쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.
쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.Open Source Consulting
 

What's hot (20)

Appium & Robot Framework
Appium & Robot FrameworkAppium & Robot Framework
Appium & Robot Framework
 
Introduction to Firebase
Introduction to FirebaseIntroduction to Firebase
Introduction to Firebase
 
Docker란 무엇인가? : Docker 기본 사용법
Docker란 무엇인가? : Docker 기본 사용법Docker란 무엇인가? : Docker 기본 사용법
Docker란 무엇인가? : Docker 기본 사용법
 
Firebase - A real-time server
Firebase - A real-time serverFirebase - A real-time server
Firebase - A real-time server
 
Powershell Demo Presentation
Powershell Demo PresentationPowershell Demo Presentation
Powershell Demo Presentation
 
Introduction to red hat agile integration (Red Hat Workshop)
Introduction to red hat agile integration (Red Hat Workshop)Introduction to red hat agile integration (Red Hat Workshop)
Introduction to red hat agile integration (Red Hat Workshop)
 
Headless - the future of e-commerce
Headless - the future of e-commerceHeadless - the future of e-commerce
Headless - the future of e-commerce
 
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
 
Docker: From Zero to Hero
Docker: From Zero to HeroDocker: From Zero to Hero
Docker: From Zero to Hero
 
ASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bitsASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bits
 
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentation
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To Jenkins
 
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React Native
 
React Native
React Native React Native
React Native
 
Benefits of developing single page web applications using angular js
Benefits of developing single page web applications using angular jsBenefits of developing single page web applications using angular js
Benefits of developing single page web applications using angular js
 
Kubernetes From Scratch .pdf
Kubernetes From Scratch .pdfKubernetes From Scratch .pdf
Kubernetes From Scratch .pdf
 
쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.
쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.
쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.
 
Containers and Docker
Containers and DockerContainers and Docker
Containers and Docker
 

Similar to 도커 학습과 Boot2Docker

왕초보를 위한 도커 사용법
왕초보를 위한 도커 사용법왕초보를 위한 도커 사용법
왕초보를 위한 도커 사용법GeunCheolYeom
 
Introduction to Docker - LOGISPOT
Introduction to Docker - LOGISPOTIntroduction to Docker - LOGISPOT
Introduction to Docker - LOGISPOTHosang Jeon
 
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!pyrasis
 
Introduction to Docker - LOGISPOT
Introduction to Docker - LOGISPOTIntroduction to Docker - LOGISPOT
Introduction to Docker - LOGISPOTLOGISPOT
 
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화OpenStack Korea Community
 
Docker 로 Linux 없이 Linux 환경에서 개발하기
Docker 로 Linux 없이 Linux 환경에서 개발하기Docker 로 Linux 없이 Linux 환경에서 개발하기
Docker 로 Linux 없이 Linux 환경에서 개발하기iFunFactory Inc.
 
docker_quick_start
docker_quick_startdocker_quick_start
docker_quick_startSukjin Yun
 
[오픈소스컨설팅]Docker on Cloud(Digital Ocean)
[오픈소스컨설팅]Docker on Cloud(Digital Ocean)[오픈소스컨설팅]Docker on Cloud(Digital Ocean)
[오픈소스컨설팅]Docker on Cloud(Digital Ocean)Ji-Woong Choi
 
[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1Ji-Woong Choi
 
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3Ji-Woong Choi
 
Introduce Docker
Introduce DockerIntroduce Docker
Introduce DockerYongbok Kim
 
1. Docker Network (1)
1. Docker Network (1)1. Docker Network (1)
1. Docker Network (1)DEVELOPER.NET
 
aws/docker/rails를 활용한 시스템 구축/운용 - docker편
aws/docker/rails를 활용한 시스템 구축/운용 - docker편aws/docker/rails를 활용한 시스템 구축/운용 - docker편
aws/docker/rails를 활용한 시스템 구축/운용 - docker편negabaro
 
[TeamStudy-022] Docker
[TeamStudy-022] Docker[TeamStudy-022] Docker
[TeamStudy-022] DockerWonjun Hwang
 
Enterprise Docker
Enterprise DockerEnterprise Docker
Enterprise DockerLee Ji Eun
 
[slideshare]k8s.pptx
[slideshare]k8s.pptx[slideshare]k8s.pptx
[slideshare]k8s.pptxssuserb8551e
 

Similar to 도커 학습과 Boot2Docker (20)

왕초보를 위한 도커 사용법
왕초보를 위한 도커 사용법왕초보를 위한 도커 사용법
왕초보를 위한 도커 사용법
 
Introduction to Docker - LOGISPOT
Introduction to Docker - LOGISPOTIntroduction to Docker - LOGISPOT
Introduction to Docker - LOGISPOT
 
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
 
Introduction to Docker - LOGISPOT
Introduction to Docker - LOGISPOTIntroduction to Docker - LOGISPOT
Introduction to Docker - LOGISPOT
 
Docker osc 0508
Docker osc 0508Docker osc 0508
Docker osc 0508
 
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
 
Docker 로 Linux 없이 Linux 환경에서 개발하기
Docker 로 Linux 없이 Linux 환경에서 개발하기Docker 로 Linux 없이 Linux 환경에서 개발하기
Docker 로 Linux 없이 Linux 환경에서 개발하기
 
docker_quick_start
docker_quick_startdocker_quick_start
docker_quick_start
 
[오픈소스컨설팅]Docker on Cloud(Digital Ocean)
[오픈소스컨설팅]Docker on Cloud(Digital Ocean)[오픈소스컨설팅]Docker on Cloud(Digital Ocean)
[오픈소스컨설팅]Docker on Cloud(Digital Ocean)
 
[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1
 
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
 
Docker
DockerDocker
Docker
 
Introduce Docker
Introduce DockerIntroduce Docker
Introduce Docker
 
[9월 런치 세미나] 도커와 쿠버네티스 기술에 스며들다
[9월 런치 세미나] 도커와 쿠버네티스 기술에 스며들다[9월 런치 세미나] 도커와 쿠버네티스 기술에 스며들다
[9월 런치 세미나] 도커와 쿠버네티스 기술에 스며들다
 
1. Docker Network (1)
1. Docker Network (1)1. Docker Network (1)
1. Docker Network (1)
 
aws/docker/rails를 활용한 시스템 구축/운용 - docker편
aws/docker/rails를 활용한 시스템 구축/운용 - docker편aws/docker/rails를 활용한 시스템 구축/운용 - docker편
aws/docker/rails를 활용한 시스템 구축/운용 - docker편
 
[TeamStudy-022] Docker
[TeamStudy-022] Docker[TeamStudy-022] Docker
[TeamStudy-022] Docker
 
K8s in action02
K8s in action02K8s in action02
K8s in action02
 
Enterprise Docker
Enterprise DockerEnterprise Docker
Enterprise Docker
 
[slideshare]k8s.pptx
[slideshare]k8s.pptx[slideshare]k8s.pptx
[slideshare]k8s.pptx
 

도커 학습과 Boot2Docker