1장. 도커란 무엇인가?

기운찬곰·2020년 8월 30일
6

Docker

목록 보기
1/13
post-thumbnail

시작하기에 앞서서...

이 포스팅은 위키북스의 시작하세요! 도커/쿠버네티스 를 보고 공부한 내용을 바탕으로 하고 있습니다. (문제가 된다면 비공개 처리하겠습니다😂😂)


1. 도커란?

도커(Docker)란 리눅스 컨테이너를 기반으로 하여 특정한 서비스를 패키징하고 배포하는데 유용한 오픈소스 프로그램이다. 여기서 중요한 말은 컨테이너라는 것이다.

1. 가상머신과 도커 컨테이너

만약 윈도우에서 리눅스를 쓰고 싶다면 어떻게 해야할까? 저장공간을 나누고 나서 처음부터 윈도우따로 리눅스따로 설치해서 한가지만 구동시키는 멀티부팅 방식. 혹은 AWS을 사용하여 컴퓨터를 대여하는 방식. 그것도 아니라면 버추얼박스같은 가상머신 솔루션을 이용하는 방법이 있겠다.

가상머신은 하이퍼바이저를 이용해 Guest OS를 만들어낸다. 예를 들어, 윈도우 운영체제를 메인으로 쓰고 있다면 이는 Host OS가 되는 것이고 이 위에 Ubuntu를 가상머신위에 구동시킨다면 이는 Guest OS가 되는 것이다. Guest OS를 구동시키려면 Host OS에서 자원을 일부 사용해야 한다. 따라서 Host OS도 느려지고, Guest OS도 성능이 그리 좋은 편은 아니다.

그렇다면 도커의 컨테이너는 뭐가 다를까? 가상머신에 비해 꼭 필요한 것만 담겨서 구동된다는 차이가 있다. 즉, 컨테이너에 필요한 커널은 호스트의 커널과 공유해서 사용하고, 컨테이너 안에는 애플리케이션을 구동하는데 필요한 라이브러리 및 실행파일만 존재하기 때문에 컨테이너를 이미지로 만들경우 용량이 대폭 줄어든다.

2. 도커의 장점

예를 들어, 어떤 프로젝트는 스프링으로 되어있고, 또 다른 어떤 프로젝트는 NodeJS로 되어있다고 해보면 어떨까? 한 컴퓨터에다가 이것도 설치하고 저것도 설치해야 하고 이것 따로 설정하고 저것 따로 설정해야 할 것이다. 사실 이런 방법은 좋지 않다.

그럼 도커를 활용하면 어떤 장점이 있을까?

  1. 가장 큰 장점은 역시 애플리케이션 독립성이다. 호스트 OS와도, 다른 컨테이너와도 독립된 공간을 보장받을 수 있기 때문에 충돌 발생 염려가 전혀 없다.
  2. 또한 컨테이너 내부에 작업을 한 후에 배포하려고 한다면 도커 이미지라는 패키지로 만들어서 운영서버에 전달만 하면 된다. 즉, 배포가 쉬워진다.
  3. 모놀리식 애플리케이션 방식에서 마이크로서비스 구조로 변화가 쉽다. 즉, 컨테이너 하나당 하나의 기능만을 제공하는 모듈로 만들어서 부하가 많은 모듈은 여러개 더 만들고 하는 조정이 가능해진다.

2. 도커 설치하기

도커는 다양한 운영체제에서 사용할 수 있지만, 가장 사용하기 좋은 환경은 역시 리눅스이다.

1. 필요 패키지 4가지 설치

$ sudo apt install apt-transport-https
$ sudo apt install ca-certificates
$ sudo apt install curl
$ sudo apt install software-properties-common

2. 패키지 저장소 추가

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add 
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"

3. 업데이트

$ sudo apt update

4. 도커 CE설치

$ apt-cache policy docker-ce
$ sudo apt install docker-ce

참고로 도커는 EE와 CE로 구분되는데 EE는 기업에디션이고, CE는 커뮤니티 에디션이라는 뜻입니다. 도커 EE는 유료이고 부가기능이 존재하고, 도커 CE는 무료이고 별도 기술지원과 서비스를 제공하지 않습니다. 핵심적인 기능은 CE에서도 사용가능하기 때문에 일반 개발자나 공부하는 학생이라면 CE설치를 추천합니다.

5. 도커 상태확인

$ sudo systemctl status docker

잘 동작하고 있는 것을 확인할 수 있다.


3. 윈도우에서 도커 설치하기

윈도우에서도 도커를 사용해보고 싶다. 내 컴퓨터가 맥이나 리눅스라면 좋았겠지만 윈도우이다. (하... 맥 사고 싶다. 맥 마렵네 😂). 뭐... 이제는 시간이 많이 흘렀으니 도커가 이제는 윈도우에서도 제대로 돌아가지 않을까 생각한다. 그래서 도전해본다. 윈도우에서 도커 사용해보기!!

1. 도커 설치 전 환경 설정

윈도우에서 도커를 사용하기 위해서는 가상화 기술인 Hyper-V를 활성화시켜야 한다.

2. Docker Desktop for Windows

다음 사이트에 접속해서 도커 윈도우 버전 다운받기. 용량은 500MB 정도 된다.

설치가 끝나면 재부팅을 해준다.

3. Install WSL 2 Kernel update

재부팅이 끝났는데 이런 메시지가 나왔다면 해당 링크로 가서 관련 파일을 설치해 준 후 Restart 하면 된다.

설치가 끝나면 docker 애플리케이션이 실행된다. 와... 근데 UI 진짜 깔끔해졌네. 👏👏

4. Kitematic 설치

다음 URL 접속하여 각자의 OS (이번 포스팅에선 Window)에 맞게 다운로드 후 압축 해제 하여 주자. 실행하고 로그인 하면 이제 도커를 사용할 기본적인 준비는 완료되었다.


참고

profile
배움을 좋아합니다. 새로운 것을 좋아합니다.

0개의 댓글