Skip to content

Instantly share code, notes, and snippets.

@LeoHeo
Last active June 28, 2020 04:41
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save LeoHeo/fa604b537495dab4faf2f74b0fda4bb0 to your computer and use it in GitHub Desktop.
Save LeoHeo/fa604b537495dab4faf2f74b0fda4bb0 to your computer and use it in GitHub Desktop.

요새는 바야흐로 대 해적시대 Docker시대이다.

그럼 대체 저 고래가 뭔데? 라는 의문이 가질 수 있다.

그래서 Docker의 특징을 살펴보고 Vagrant랑 비교했을때 차이점을 살펴보고자 한다.

특징

Docker는 부두노동자를 뜻하는 말이다.

그리고 고래는 서버에서 여러개의 컨테이너(이미지)를 실행하고 이미지 저장과 배포(운반)을 의미한다.

Docker는 컨테이너형이다. 이게 무슨말 이냐면 컨테이너라는 독립된 공간에서 프로세스가 동작한다.

복잡한 리눅스 어플리케이션을 컨테이너로 묶어서 실행할 수 있다.

그래서 개발, 테스트, 스테이징, 릴리즈 서버환경을 하나로 통일하여 효율적으로 관리를 할 수 있다.

그래서 기존의 가상화 방법보다 훨씬 가볍다.

이렇게 가벼울수 있는 이유는 가상화는 항상 게스트 OS가 필요했는데 Docker는 게스트 OS가 없는(호스트게스트 커널공유)여서 그렇다.

그래서 일반 가상화랑 다르게 docker container 안에서는 다른 OS(리눅스상에서 윈도우 돌리는 것) 동작 불가

그리고 DockeHub를 통해서 사람들끼리 이미지를 공유할수도 있다.

그래서 이미지 버전관리가 가능하고 중앙 저장소에 push/pull이 된다.

이미지 & 컨테이너 차이점

이미지

  • 서비스 운영에 필요한 서버 프로그램, 소스 코드, 컴파일된 실행파일을 묶은 형태
  • 저장소에 push/pull 하는건 이미지
  • 실행파일로 비유

컨테이너

  • 이미지를 실행한 상태
  • 프로세스로 비유

Docker & Vagrant 차이점

그럼 이 Docker가 Vagrant랑 뭐가 틀린지 한번 조사해봤다.

Docker Vagrant
컨테이너형 하이퍼바이저형
호스트OS와 같은 OS만 처리 호스트OS와 다른OS 다룰수 있다.
애뮬레이트하는만큼 시간 걸림 바로 시작

결론

Docker에 대해서 알아보고 Vagrant와 차이점에 대해서 알아봤다.

정리하다보니 어느정도 Docker의 개념에 대해서 알거 같다.

참고사이트

틀린적이 있으면 지적해주시면 감사하겠습니다.

@dbwhddn10
Copy link

docker가 바로시작 입니다.. 이부분이 바꼈네요.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment