docker

56
Docker 함께하면 당신도 SysAdmin

Upload: huey-park

Post on 13-Feb-2017

343 views

Category:

Software


0 download

TRANSCRIPT

Docker함께하면 당신도 SysAdmin

자기소개박재완[email protected], PHP, C++

사장님이 이제부터 젠킨스를 쓰라고 합니다.docker run ­p 8080:8080 ­p 50000:50000 ­­name jenkins jenkins 

약 2

사장님이 이번에는 redmine을 쓰라고 합니다.

docker run ­p 3000:3000 ­­name redmine redmine 

사장님이 이번에는...게임서버, 웹서버, 디비, 캐시, 푸시, 등등등 짬뽕으로 잘 버

무려서... 부탁해 내일아침에 보자고...

Contents1. 새로운 기술을 도입하는 법2. Docker3. Demo4. Q & A

새로운 기술을 도입하는 법

1. 학습

2. 사용

3. 전파

새로운 기술을 도입하는 법1. 학습2. 사용3. 전파4. 내전

새로운 기술을 도입하는 법 ???

사례 1.빌드는 사람이 하는 일 아닌가요?

계속되는 빌드에 지친 프로그래머

Jenkins라 불리는 구세주 발견

자동화 -> 평화

사례 2.PHP의 친구는 notepad++

PHP...

notepad++ 과 함께 (feat. log)

참디버깅의 고통이란 이런것이다

PHP Tools for Visual Studio 과 함께

breakpoint -> 평화

사례 3.개발은 역시 서버에서!

서버에 환경을 구축하고 모두가 한마음으로 ...

로컬에 환경을 구축하려면 nginx, PHP, 기타 등등 의존성 ...

성공한 자만이 로컬에서 개발할 수 있을 지어다

이 때 !

Docker

Docker란 무엇인가?

Docker는 애플리케이션의빌드, 배포, 실행을 도와주는 오픈 플랫폼

비슷한 친구로는chef, puppet and vagrant 등이 있다고 함

누가 주도하는가?

Docker Inc.+

Open source community

장점1. 관리가 쉽다.2. 배포가 쉽다.3. 빠르다.4. 풍부한 생태계가 존재한다.

1. 관리가 쉽다.DockerFile을 이용해

환경에 대한 이력추적이 가능하다FROM ubuntu:14.04 

MAINTAINER hueypark <[email protected]>

RUN apt­get update 

RUN apt­get install ­y language­pack­en­base 

RUN apt­get install ­y software­properties­common 

RUN LC_ALL=en_US.UTF­8 add­apt­repository ppa:ondrej/php 

RUN apt­get update 

RUN apt­get install ­y nginx RUN apt­get install ­y php7.0­fpm 

2. 배포가 쉽다.한번 빌드한 Docker Image를 이용여러 컨테이너를 생성 가능하다

3. 빠르다.Docker Container에서 상세히 설명

4. 풍부한 생태계가 존재한다.300,000개 이상의

Dockerized app이 Docker Hub에 존재함https://hub.docker.com/explore/

주요 기능 소개

Docker Image

Image는 읽기 전용의 템플릿,Container를 생성하기 위해 사용

Docker는 이미지를쉽게!만들고!

업데이트하고!배포!

할 수 있는 기능을 제공

Docker Container

Container는 독립된 디렉토리와 비슷하다

애플리케이션 실행에 필요한모든 내용을 소유하고 있으며

Image로부터 생성된다

가상머신과는 다르다!가상머신과는!

Host OS 위에 Hypervisor를 통해Guest OS를 전체설치하고가상화하는 것이 아니라

같은 OS에서 Docker Engine에의해 프로세스 격리

성능차가 거어어의 없다고 함

가상머신

Docker

데모

순서1. ubuntu:14.04로부터 이미지를 만들고2. nginx 설치3. php 설치4. 설정파일 설정5. 코드 복사6. 80번 포트 열기7. 실행8. container 분신술은 다음에...

Cheats1. docker build -t slides .2. docker run -p 80:80 -it --name slides slides

Q & A