docker_quick_start

18
Docker 시작하기 Docker Quick Start Guide [email protected]

description

docker quick start

Transcript of docker_quick_start

Page 1: docker_quick_start

Docker 시작하기

Docker Quick Start Guide

[email protected]

Page 2: docker_quick_start

Revision History

• 2014.11.01 - first commit

Page 3: docker_quick_start

Docker 탄생 배경

• Docker를 알기 전에

• Chroot -> LinuX Container -> Docker

Page 4: docker_quick_start

Problem

시스템 구성 후에 서비스가 성장함에 따라서 설정을 계속해서 변경하고 확장을 위해서 코딩 외적으로 해야할 작업이 많으며 scale out 방식으로 아키텍처를 가져갈 경우에업무부하가 기하급수적으로늘어남

Page 5: docker_quick_start

Solution

• 캔트백 옹 "인터페이스와 구현을 분리하라"호스트코드와 서비스 코드를 분리하자.

Page 6: docker_quick_start

Immutable System

• 호스트OS와 서비스 운영을 분리하자.

• 서비스 변경 사항이 있으면• OS레벨에서부터 교체

Page 7: docker_quick_start

Docker란

• Container LinuX Container 의 강화판

• 프로세스의 독립• 프로그램을 하나 더 실행시키는 느낌• OS가 들어있지 않음

GuestOS

App

GuestOSGuestOS

App App

VM

Page 8: docker_quick_start

docker 설치

• boo2dockerwindow나 mac에서 boo2docker https://github.com/boot2docker/boot2dockercentos7 sudo yum install dockerUbuntusudo apt-get updatesudo apt-get install docker.iosudo ln -sf \ /usr/bin/docker.io /usr/local/bin/docker

Page 9: docker_quick_start

container 확인

• docker ps -a

Page 10: docker_quick_start

docker 컨테이너 조작 명령

• start | stop | restart | attach(접속)rm 삭제

• docker rm 부여한이름• 전체 삭제• docker rm 'docker ps -

aq'

Page 11: docker_quick_start

Container만들기

docker run -i -t ubuntu /bin/bash우분투 이미지를 다운받아서/bin/bash를 실행한다.이름을 넣어서 실행docker run -i -t --name my_ubuntu ubuntu /bin/bash

Page 12: docker_quick_start

ubuntu 명령으로 test

Page 13: docker_quick_start

docker image 만들어서 배포하기

• Prerequisitionhttps://hub.docker.com/회원가입 후 add Repository click해서 repo생성

Page 14: docker_quick_start

Docker 파일 생성

• vi Dockerfile• ##contents dockerfile• FROM busybox• CMD echo 'hello docker!'

busybox가 가벼워서 선택from에 운영체제 입력하면 된다.cmd는 수행할 명령이다.

Page 15: docker_quick_start

Docker 파일 build

• docker build -t 계정명/프로젝트명 .

계정명은 가입한 계정과 동일하게 프로젝트명 뒤에 (.) 잊지마세요.

Page 16: docker_quick_start

build한 Docker 실행

Page 17: docker_quick_start

docker login

• 쉘에서 login사이트에 push를 위해서 먼저 로그인합니다.docker login 입력

Page 18: docker_quick_start

docker push

• https://hub.docker.com/에 배포

• docker push 본인id/프로젝트명