Docker

[Docker] 왜 도커를 사용할까? + 설치까지

언킴 2022. 3. 2. 14:21
반응형

내 컴퓨터에서 하나의 애플리케이션을 만들기 위해서는 운영체제 위에 여러 소프트웨어를 설치하여야만 한다.  웹 서버라든지, 데이터베이스 라든지 여러 소프트웨어를 깔아서 본인만의 애플리케이션을 만들게 된다. 매번 소프트웨어를 설치하는 일은 상당히 복잡한 일이다. 하지만 네트워크로 통신해 각각의 앱(App)을 가지고 와서 사용할 수 있게 할 수 있다면 얼마나 좋을까? 전문가들이 구축해놓은 운영체제들을 가지고와서 쓸 수 있게 해주는 것이다. 

 

그렇게 된다면 매번 새롭게 앱을 구축하고, 운영체제를 설치하고 하는 방식이 필요 없을 것이다. 본인이 필요한 소프트웨어나 운영체제를 그냥 불러옴으로써 사용할 수 있기 때문이다. VMware나 Virtualbox와 같은 개념이다. 하지만 매번 운영체제에 설치된 앱을 불러오는 과정은 매우 무겁다. 운영체제 자체가 용량이 어마어마하기 때문이다. 그렇기 때문에 우리는 운영체제를 불러오는 것이 아니라, 각각의 앱들을 불러와서 사용할 수는 없을까? 라는 생각으로 나오게 된 것이 바로 도커(Docker)이다.

 

각각의 앱들은 그냥 실행되는 것이 아니라 격리된 환경에서 실행된다. 이때 운영체제가 설치된 컴퓨터를 Host라고 부른다. Host에서 격리된 각각의 실행 환경을 컨테이너(Container)라고 부른다. 컨테이너에는 운영체제 전체가 설치되어 있는 것이 아니라 앱을 실행하는데 필요한 라이브러리(library)와 실행파일(bin)만 포함되어 있다. 이미 설치되어 있는 운영체제를 공유하기 때문에 추가로 설치할 필요가 없고, 운영체제가 하나이기 때문에 속도도 느려지지 않을 것이다. 이렇게 컨테이너 기술을 이용해 위와 같은 일을 쉽게 해주는 소프트웨어들이 많이 있지만, 우리는 대표적으로 사용되는 도커(Docker)를 다루어 볼 것이다. 도커는 부두에서 컨테이너를 다루는 노동자들을 의미한다고 한다. 

 

도커와 같은 컨테이너 기술은 리눅스(Linux) 운영체제 기술이다. 도커 위에 돌아가는 컨테이너와 컨테이너 안에서 실행되는 각각의 앱들은 리눅스 운영체제에서 동작하는 앱들이다. 그렇다면 윈도우에서는 도커를 쓸 수 없을까? 아니다. 윈도우나 MacOS라도 도커를 사용할 수 있다.  본인의 컴퓨터가 윈도우나 MacOS라면 본인의 컴퓨터에 가상 머신을 설치하고, 가상머신에 LinuxOS를 설치한다면 리눅스 운영체제 위에서 도커와 같은 컨테이너 기술을 사용할 수 있을 것이다. 

 

도커는 알아서 가상머신을 만들어주고, 알아서 리눅스를 설치해주기 때문에 그다지 복잡하지 않다. 본인의 컴퓨터가 리눅스 운영체제라면 속도에 아무런 문제없이 도커를 사용할 수 있지만, 본인의 운영체제가 리눅스가 아니라면 가상머신을 설치하기 때문에 어느정도의 속도저하를 감수하여야만 한다. 그럼에도 불구하고 다른 운영체제에서 도커를 사용하는 이유는 도커의 편의성이 어마어마 하기 떄문이다. 

 

도커 설치하기

도커를 설치하기 위해서는 해당 링크에 접속하면 된다. 각각의 운영체제별로 도커를 설치하는 방법이 나와있다. 우리는 리눅스와 윈도우만을 다룰 예정이며, 분석 환경은 Window 10 Home에서 진행한다.

 

1. Docker for Linux

 

 

2. Docker Desktop for Windows

윈도우도 마찬가지로 해당 이미지를 클릭해 설치하면 된다.

 

윈도우를 사용하는 사람들은 설치가 완료되었을 때 Docker Desktop이라는 파일을 실행할 수 있다. 해당 프로그램을 실행한 후 오른쪽 하단 상태 표시줄에 도커 이미지를 우클릭 하여 Dashboard를 실행할 경우 아래와 같은 파일이 생성된다. 

 

 

우리가 도커의 환경을 직접 제어할 수 있도록 만들어주는 도구라고 보면 된다. 도커는 일반적으로 명령어를 통해 제어하는 방법이 도커를 제대로 사용하는 법이므로 일반적으로는 위와 같은 도구를 사용해서 도커를 제어하지는 않는다. 설치가 완료된 후 cmd창(혹은 powershell)에서 docker images혹은 docker -v, docker --version을 입력했을 경우 별다른 에러 코드가 발생하지 않는다면 도커가 제대로 설치된 것이라고 볼 수 있다. 

 

$ docker --version
Docker version 20.10.12, build e91ed57

$ docker -v
Docker version 20.10.12, build e91ed57

$ docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE​

 

윈도우 환경에서 실행하는 사람 중 WSL2 경고창이 뜨는 사람은 WSL2 를 설치해야만 한다. 위에서 언급했다시피 Docker는 Linux위에서 돌아가는 녀석이기 때문에 윈도우에서 WSL를 설치함으로써 따로 가상환경 없이 Docker와 Linux 명령어를 사용할 수 있다. 

 

 

참고 : youtube