본문 바로가기
IT

[도커/Docker] Docker란 무엇인가?

by 호유(ho_you) 2020. 2. 13.
반응형

◎ 도커(Docker)란?

Docker 의 사전적 정의를 봅시다.

아마도 "잘라 내는 사람"의 의미를 가져온거 같네요.


출처 : 다음 영어사전

 

- 그렇다면 뭘 잘라낸다는 걸까요?

간단히 말하면 기존의 물리적인 서버 자원을

논리적으로 잘라내서(쪼개서) 더 효율적으로 사용하자!

출처 : https://www.docker.com/resources/what-container

 

- 위 도커 구성도를 예로 들어 설명하면

즉 , 예를들어 윈도우(Host Operating System)가 깔려있는 서버(Infrastructure)

도커엔진(Docker)을 설치하고 그 도커엔진 위에 컨테이너(App A,B,C...F)를 올린다.

각각의 컨테이너는 DB서버가 될수도 있고, WEB서버가 될수도 있고, WAS 서버 등등

이 될 수 있다.

 

- 그렇다면 VM웨어랑 차이가 뭔가요?

글쎄요...저도 정확히 설명 할 수 없지만, 도커 홈페이지에 올라온 구성도를 보았을때,

가장 큰 차이가 OS 의 차이인거 같네요.

도커는 APP Layer를 쪼개주는 놈(추상화)

VM웨어는 physical hardware 쪼개주는 놈(추상화)

잘 모르겟네요....대충 이정도만 이해하고 넘어갑시당...

도커 구성도 VS VM웨어 구성도(출처 :  https://www.docker.com/resources/what-container)

 

- 도커의 용어에 대해 알아봅시다

- 도커 Image : 컨테이너 구성을 이미지(스냅샷) 찍어놓고, 다른곳에 설치할 때 재활용 가능

                    ( 옛날에 윈도우 설치하고 캡쳐 떠놓는 고스트이미지랑 비슷한 개념인듯하네요 )

                    ※ 도커 Image 공유 사이트 : https://hub.docker.com/

- 도커 client : Host OS(Windows,Linux) 를 도커 관점에서 "도커 client" 라고 부르는듯 하네요.

- 도커 server : Docker Engine

- 도커 swarm : 컨테이너 오케스트레이션

 

- 오케스트레이션? 그게 뭔데?

 

1. 정의

여러대의 서버와 여러개의 서비스를 편리하게 관리해주는 도구

2. 왜나왔냐면?

이제 한두대의 서버는 관리가 가능한데 점점 더 서버수가 늘어났을때 감당이 안되는거야,

그래서 관리를 쉽게 해주는 도구가 필요했던 거지.

3. 다양한 기능 제공

 1) 스케쥴링 : 컨테이너를 적당한 서버에 배포

 2) 클러스터링 : 한곳에 명령어를 때리면 전체로 퍼짐

 3) 디스커버리

4. 대표적인 orchestration 도구

 - docker swarm 거의 망함!

 - kubernetes (구글이 만들었어!! 대세!)

 

- 그래서 요즘 쿠버네티스 얘기가 많이 나오는 거구나!

도커를 공부하다 보니, 쿠버네티스까지 왔네요...

 

결론!!

결론은 도커로 컨테이너를 만들고,
관리해야 하는 컨테이너가 점점 많아지면 쿠버네티스 관리 도구를 이용한다!

 

반응형

'IT' 카테고리의 다른 글

플러터[flutter] 기초 정리 1  (1) 2020.07.22
[Pivotal][MSA] 마이크로서비스로의 여정 정리  (2) 2020.02.08

댓글