[Docker] Docker 개요 및 윈도우에 설치하기

홍정완·2022년 10월 24일
0

Docker

목록 보기
1/1
post-thumbnail

Docker 개요


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


Docker 장점

개발 이후 마지막 단계는 배포 및 운영 단계다. 보통 AWS 등의 클라우드 서비스를 이용해 배포할 경우 서버 환경에 여러 설정이 필요하다. (JVM, Tomcat 등)

이를 해결하기 위해 컨테이너(Container) 개념이 등장했다. 도커를 설치하면, 컨테이너에 이미지(Image)를 담아서 구동시키는 방식으로 배포할 수 있다. 컨테이너를 어떻게 만들고, 활용 할지에 대해서는 도커 소프트웨어가 정의해 놓았다.

즉, 배포된 소프트웨어 이미지를 도커를 통해 컨테이너에 올리면 알아서 설정이 이루어진다.
(JVM, Tomcat 등)을 따로 설치할 필요가 없다.


위 그림과 같이 도커 파일(Docker File)을 어떤 소프트웨어를 컨테이너에 담아서 구동시킬 것이다.라는 것을 명시해 주고 빌드(Build) 해주면, 도커 이미지가 그에 맞게 생성된다.

그 후, 이미지를 구동시키면 도커 컨테이너 위에서 실행된다.



VM(Virtual Machine) VS Container



Virtual Machine

가상화 기능을 사용해 Guest OS를 만들어낸다.

예를 들어 윈도우 운영체제를 사용하는 사람이 XX 리눅스를 새롭게 가상 머신 위에서 구동시킨다면, 윈도우는 Host OS이고 XX 리눅스는 Guest OS입니다. 이런 점에서 Guest OSHost OS는 서로 의존적이지 않다.

다만 Guest OSI/O 기능이 사실상 Host OS를 거쳐서 이루어지기 때문에 속도가 느리다는 단점이 있다. 또한 Guest OS 자체가 새로운 운영체제로서 존재해야 되기 때문에 용량이 크다.


컨테이너(Container)

Docker Engine 위에서 동작한다.

별도의 Guest OS가 사용되지 않아서 성능적으로 이점이 있고, 메모리 용량도 작게 차지한다. 다만 사용하고 있는 운영체제와 도커 컨테이너에 의존성이 존재한다.

기본적으로 Windows 운영체제를 사용하고 있는 컴퓨터는, 도커 엔진 위에 올라가는 컨테이너도 Windows Container야 한다. 도커는 Container이기 때문에 VM에 비해 이미지 파일의 크기가 작아 빠르게 이미지를 만들고 실행할 수 있다는 특징이 있다.



Docker 패러다임

변경 불가능한 인프라(Immutable Infrastructure)

도커에서는 이미지를 도커 위에 올리는 것만으로도 배포가 끝난다.
변경 불가능한(Immutable)의 의미는 상태가 없는(Stateless), 확장 가능한(Scalable) 형태이다.

도커로 돌아가는 소프트웨어 자체는 어떠한 데이터도 가지고 있으면 안 되고, 임시 파일 정도만 가지고 있는 상태에서 돌아가야 한다. 즉, 사용자 계정 정보와 같은 실질적인 데이터들은 외부 스토리지로 빼놓아야 한다.



윈도우에 도커 설치하기


도커는 크게 ① 오픈소스 무료 버전(Community Edition), ② 유료 버전(Enterprise Edition)으로 나뉜다. 

기본적으로 CE 버전으로도 도커의 모든 기능을 이용하는데 큰 제약이 없지만 실 서버에 도커를 운용하려면 EE를 사용하는 것이 유리하다. 그러나 도커 유로 버전은 각 서버별로 연간 1,000 달러 이내의 라이선스 비용이 든다.


Docker Engine

  • 특정한 소프트웨어를 도커 컨테이너로 만들고 실행하게 해주는 데몬(Daemon)을 의미

Docker Client

  • Docker Engine과 통신하는 소프트웨어로 개발자가 직접 이용할 수 있다.

Docker Host OS

  • Docker Engine을 설치할 수 있는 운영체제 환경을 의미한다.
  • Docker Engine은 기본적으로 리눅스 OS 위에서 돌아가기 때문에 윈도우에서 Docker Engine을 이용하려면 가상화 기능이 필요하다.

Docker Machine

  • 로컬 및 원격지 서버에 도커 엔진을 설치하고, 다양한 환경 설정을 자동으로 수행해 주는 클라이언트를 의미



도커 툴박스는 기본적으로 오라클 VM VirtualBox를 기반으로 동작한다. 쉽게 말하면 윈도우 위에 리눅스 가상 머신을 돌리고, 그 위에서 도커 엔진을 돌리는 방식이라고 이해할 수 있다.

그래서 VM 가상화 기능을 사용할 수 있어야 한다. 윈도우 운영체제에 작업 관리자성능 탭에 들어갔을 때 가상화 기능이 활성화되어있는지 확인해 보자.


가상화 : 사용으로 되어있으면 이제 도커 툴박스를 설치해 보자.



도커 툴박스 설치



DockerTollbox-19.03.1.exe를 눌러 설치를 시작하자.


✅ 툴박스를 설치하면 자동으로 설치되는 것들

  • 도커 엔진이 이미지 및 컨테이너를 생성할 수 있도록 해주는 Docker Client
  • 윈도우 터미널에서 사용하는 도커 엔진 명령어를 이용하게 해주는 Docker Machine
  • Docker Compose 기능
  • 도커 GUI 도구인 Kitematic
  • 도커 명령어 입력이 가능한 Docker QuickStart Shell
  • 오라클 VM VirtualBox

아래 이미지를 보고 잘 따라해보길 바란다.







Docker Quickstart Terminal을 클릭해 실행시키자.


도커 실행 화면

profile
습관이 전부다.

0개의 댓글