안녕하세요. 이번 포스팅에서는 centos 환경에 도커를 설치해보겠습니다.
리눅스에 도커를 설치할 때는 3가지 방법이 있습니다.
- repository를 이용한 설치
- docker.com에서 제공해주는 application repository가 있습니다. repository는 패키지 저장소를 의미합니다. 여기 패키지 저장소에는 도커 엔진, 도커 데몬 등 도커가 작동하는데 필요한 프로그램들이 설치되어 있습니다.
- repository를 이용해 설치를 진행하려면 인터넷이 연결된 상태여야 합니다.
- 패키지를 다운로드 후 설치
- 폐쇄망에서는 인터넷이 연결되지 않아 repository를 이용한 설치가 불가능합니다. 이런 경우에는 usb에 도커 프로그램들을 미리 다운받아 놓고 직접 수동으로 다운로드를 할 수 있습니다.
- script를 이용한 설치
- 간단하게 도커를 설치할 수 있도록 스크립트를 사용합니다.
필자는 첫 번째 방법인 repository를 이용하여 설치를 진행해보겠습니다.
공식 문서를 확인하면서 진행했습니다.
https://docs.docker.com/engine/install/centos/
Install Docker Engine on CentOS
docs.docker.com
centos 환경에 repository를 이용한 도커 설치
최신 도커를 다운로드 받기 위해 혹시나 이미 도커가 설치되어 있는 경우에는 이전에 설치한 도커를 삭제합니다.
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
도커를 설치하기 전에 기본적인 세팅을 잡아줍니다.
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
이 시점에서 '우분투' 환경에 도커를 설치하는 경우에는 인증서를 가져다 저장하는 커맨드를 실행해야 합니다.
URL을 통해 제공해주는 애플리케이션 프로그램들은 인증서를 갖고 디지털 서명이 되어있기 때문입니다.
하지만 centos에서는 기본적인 세팅을 잡을 때 인증서를 갖고 오기 때문에 따로 인증서를 저장하는 커맨드를 실행할 필요는 없습니다.
이제 도커 엔진을 설치해보겠습니다. 가장 최신 버전을 설치합니다.
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
필자는 위 명령어를 실행했을 때 아래와 같은 에러를 맞닥뜨렸습니다.

해당 에러는 아래 도커 포럼에서 해결방법을 찾아 해결했습니다.
해결방법은 /etc/yum.repos.d/docker-ce.repo 파일을 켭니다.

이후 baseurl을 baseurl=https://download.docker.com/linux/centos/7/x86_64/stable 로 수정을 하고 yum update 명령어를 다시 실행하면 됩니다.
이제 도커가 설치되었으니 도커를 실행시켜줍니다.
systemctl start docker
위에 잘 안되면 yum install docker로 설치한 이후 systemctl start docker 하면 끝