도커를 이해하기 위해서는 가상화가 무엇인지 먼저 알아야합니다.
가상화란 Hardware를 Software로 표현하는 것이므로,
즉! File 형태로 만들 수 있습니다
File형태이면 어떤 이점이 있을까?
1. 이동이 쉽다
2. 버전 관리가 가능하다
🤔그래서 도커가 뭔데??
하나의 Hardware(Host)의 운영체제(OS) 영역을 공유함으로써
자원을 효율적으로 사용할 수 있게하는 것이 바로 도커입니다
도커를 설명할 때 가장 많이 비교되는 대상인 기존의 가상 머신과의 차이점을 보면서
조금 더 이야기해볼게요!
가상머신(Virtual Machine)은 생성될 때 Guest OS 영역을 각각 생성하여 용량이 크기 때문에,
속도가 느리고 가상머신이 증가할 경우 자원의 낭비가 심해질 수 있습니다.
그러나, 도커(docker)는 Guest OS 영역이 제외하고 Container를 생성하므로 용량이 작고 애플리케이션 배포에 최적화 되어있다고 할 수 있습니다.
도커는 기존의 가상머신보다 용량이 작고 애플리케이션 배포에 최적화된 장점이 있기 때문에,
최근 Cloud
환경에서 많이 사용되고 있습니다.
도커는 Container를 생성하고, 다수의 Container를 운영 관리하기 위해 사용되는 것이
바로바로 Kubernetes입니다.
Image = 컨테이너 템플릿
Container = 인스턴스
도커를 사용하는 이유와 장점에 대해 알아봤으니,
이제 도커의 아키텍처에 대해 살펴보겠습니다.
도커는 Image를 통해 Container를 생성할 수 있고,
각각의 Container는 격리된 상태로 독립적인 서비스가 가능합니다.
쉽게 말하자면 Image는 Class이고,
Container는 Image를 통해 생성된 Instance라고 생각하시면 됩니다!
그렇다면 도커 Image는 어디서 찾을 수 있고 다운로드할 수 있을까요?
Docker hub에서 다양한 Image를 제공하고 있으므로,
원하는 Image를 찾고 다운로드 받을 수 있습니다.
또한, 사용자가 Image를 제작하여 업로드하는 것도 가능합니다.
Docker hub를 살펴보면 Official한 Image외에도
다양한 사용자가 제작한 Image들도 많이 찾아보실 수 있답니다!
container는 하나의 프로세스라고 볼 수 있으며, 실행가능한 Image의 인스턴스입니다.
docker run
명령어를 통해 Image는 Container로 변환됩니다.
도커에 대한 이론적인 개념은 이제 이해했으니,
실습환경을 위해 도커를 설치해보겠습니다.
작업관리자를 켜신 다음, 성능 탭에서 가상화가 '사용'으로 되어있는지 체크해야합니다.
되어있지 않은 경우 BIOS 환경에서 사용 설정을 해주어야합니다.
DockerDesktop을 다운로드 및 설치합니다. 링크를 걸어두었으니 클릭하여 설치하시면 됩니다.
설치가 완료되면 아래와 같은 창이 뜨고, 'Close and restart' 버튼을 클릭하여 PC를 재부팅해야합니다.
재부팅 후 WSL2 관련 메세지가 뜨는 경우 아래 'Restart'버튼을 클릭하시면 됩니다.
windows+R를 누른 후, cmd창을 띄워 docker version
명령어를 입력한 후,
설치된 도커 버전이 나오면됩니다.
또는, docker desktop 프로그램에서 아래 docker 표시가 초록색으로 표시되어있으면 정상적으로 설치되어 구동중인것을 확인할 수 있습니다.