Install Docker

y001·2025년 2월 15일
0
post-thumbnail

시작하면서

이 글에서는 CentOS 9 가상환경에서 Docker를 설치하고, 다양한 설치 방법 및 각 서비스가 하는 역할을 설명한다. 또한, 기본적인 실행 및 검증을 진행하는 방법을 소개하여 VM 환경에서도 Docker를 원활하게 사용할 수 있도록 구성할 것이다.

1. Docker 설치 방법 비교

Docker는 여러 가지 방법으로 설치할 수 있으며, 각각의 방식은 약간씩 차이가 있다.

1.1 get-docker.sh 스크립트를 이용한 자동 설치

가장 간편한 방법은 공식 스크립트를 이용하는 것이다.

curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
systemctl enable --now docker

이 스크립트는 자동으로 필요한 패키지를 설치하고, Docker 저장소를 추가한 후 최신 버전의 Docker를 설치한다. 그러나 내부적으로 어떤 과정이 진행되는지 명확하지 않으므로, 직접 패키지를 설치하는 방법도 알아두는 것이 좋다.

1.2 수동 설치 (권장 방법)

수동 설치를 통해 각 단계에서 어떤 설정이 이루어지는지 확인할 수 있다.

1.2.1 YUM 저장소란?

YUM(Yellowdog Updater, Modified)은 CentOS 및 RHEL 계열의 패키지 관리 시스템이다. YUM 저장소(Repository)는 패키지들을 저장하는 곳으로, 기본적으로 CentOS 공식 저장소에서 패키지를 다운로드할 수 있다. 그러나 최신 버전의 Docker는 기본 저장소에 포함되지 않기 때문에, 별도의 저장소를 추가하여 최신 패키지를 설치해야 한다.

1.2.2 필수 패키지 설치

먼저 Docker 설치를 위해 필요한 패키지를 설치한다. yum-utils 패키지는 저장소 관리를 위해 필요하며, device-mapper-persistent-datalvm2는 컨테이너의 볼륨 관리를 돕는다.

yum -y install yum-utils device-mapper-persistent-data lvm2

1.2.3 Docker 저장소 추가

공식 Docker 저장소를 추가하여 최신 버전을 설치할 수 있도록 한다. yum-config-manager 명령어는 yum-utils 패키지에서 제공하는 도구로, YUM 저장소를 추가하거나 관리할 때 사용된다. 기본적으로 CentOS의 기본 저장소에는 최신 Docker 패키지가 포함되지 않기 때문에, 이 명령어를 이용하여 Docker 공식 저장소를 추가하면 최신 버전의 Docker를 사용할 수 있다. CentOS 기본 저장소에는 Docker 패키지가 포함되지 않거나 오래된 버전이 제공될 수 있다. 따라서 Docker 공식 저장소를 추가하면 최신 안정 버전을 사용할 수 있으며, 보안 패치 및 성능 최적화가 적용된 최신 업데이트를 받을 수 있다.

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

1.2.4 Docker 설치 및 서비스 활성화

다음 명령어를 실행하여 Docker를 설치하고, 서비스가 자동으로 시작되도록 설정한다.

yum -y install docker-ce docker-ce-cli containerd.io
systemctl enable --now docker

설치가 완료되었는지 확인하려면 다음 명령어를 실행한다.

rpm -qa | grep docker
docker --version
docker info

1.3 실행 중인 Docker 관련 서비스

설치 후 다음과 같은 서비스들이 실행 중일 것이다.

systemctl status docker
systemctl status containerd
  • docker.service : Docker 데몬을 실행하여 컨테이너 관리를 담당
  • containerd.service : 컨테이너 실행 및 관리 담당, Docker뿐만 아니라 다른 컨테이너 런타임에서도 사용됨
  • docker.socket : 시스템에서 Docker CLI와 상호작용하는 소켓 서비스

각 서비스는 독립적으로 동작하며, containerd는 Docker의 핵심 기능을 담당한다.

2. 사용자 설정 및 권한 부여

Docker는 기본적으로 root 권한이 필요하기 때문에, 일반 사용자도 사용할 수 있도록 docker 그룹에 추가하는 것이 좋다.

usermod -aG docker $(whoami)

변경 사항을 적용하려면 로그아웃 후 다시 로그인하거나, 다음 명령어를 실행한다.

newgrp docker

0개의 댓글