2. 도커 엔진

<aside> 💡 도커 엔진은 이미지 및 컨테이너를 생성하고 실행하는 코어 기능을 수행하는 컴포넌트입니다. 흔히 우리가 도커라고 부르는 것은 '도커 엔진'을 가리키는 말이죠. 이미지와 컨테이너가 만들어내는 개발 환경의 신세계로 들어가 봅시다.

</aside>

도커를 설치하는 일은 아주 간단합니다. Windows/macOS/Linux 등 운영체제를 모두 지원하며, Windows와 macOS에서는 클라이언트를 설치하여 GUI로 손쉽게 사용이 가능합니다. 본 강의에서는 개발환경 통일 및 CLI 사용법을 익히기 위해 Linux 배포판인 Ubuntu Server 에서 실습을 진행하겠습니다.

<aside> 💡 MacOS의 경우 CPU의 종류에 따라 실습하는 방법에 다소 차이가 있습니다. 실습 전 확인 부탁드립니다 🙂

</aside>

2.1 도커 기본 명령

목차 0.3의 가이드대로 도커가 설치된 VM에 원격 접속을 해주시고 다음의 명령어를 실행해 보면서 도커와 친해지는 시간을 가져보겠습니다.

리눅스 환경에서 도커는 과거 TCP port 방식에서 UNIX Socket에 바인딩되는 방식으로 변경된 이후 root 권한을 필요로 합니다. 즉, 모든 docker 명령어 앞에 sudo 를 반드시 붙여야 한다는 뜻이죠.

2.1.1 도커 버전 확인하기

$ sudo docker version

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/a3424120-9795-4e93-872f-333c7700ffab/ggingmin_ubuntu_server___.png

현재 제가 실습하고 있는 도커의 버전은 20.10.7 커뮤니티 버전이고 아래에 기타 정보들이 나오는 걸 확인할 수 있습니다.

2.1.2 도커 시스템 정보 확인하기

$ sudo docker system info

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/11d8b5cb-ae1f-40bc-a94f-a5c4edafa9e9/ggingmin_ubuntu_server___.png

현재 제가 구동 중인 도커에는 컨테이너나 이미지가 없기 때문에 모두 0이라고 나옵니다. 추후 실습을 진행하면서 어떤 변화가 있는지 살펴보도록 하겠습니다.

2.2 도커 컨테이너

컨테이너를 아는 것이 곧 도커를 아는 것이라 할 정도로 컨테이너는 매우 중요한 개념입니다. 하지만 중요하다고 해서 어렵게 받아들일 필요는 없습니다. 그 구조를 보면 오히려 우리가 사용하고 있는 PC보다 간단하기 때문입니다. 아래 다이어그램을 한번 보겠습니다.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/95ce6544-8a65-471c-be24-83f9df61f1d7/_(1).png