설치 전 환경 준비
본 가이드는 CentOS 7 환경을 기준으로 합니다. 먼저 운영체제 버전을 확인합니다.
cat /etc/redhat-release
1. 기존 Docker 패키지 제거
이전 버전의 Docker(docker 또는 docker-engine)가 설치되어 있다면 새 버전 설치 전에 반드시 제거해야 합니다.
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
제거 과정에서 /var/lib/docker/ 디렉토리에 저장된 이미지, 컨테이너, 볼륨, 네트워크 설정은 자동으로 삭제되지 않습니다. 만약 제거할 패키지가 없다는 메시지가 출력되면 다음 단계로 넘어가면 됩니다.
2. 패키지 인덱스 업데이트
yum 패키지 매니저의 캐시를 업데이트하여 최신 패키지 정보를 가져옵니다.
sudo yum update -y
3. 필수 유틸리티 설치
GCC, C++ 컴파일러 등 기본 개발 도구를 설치합니다. (이미 설치된 경우 생략 가능)
sudo yum install -y gcc gcc-c++
4. Docker 저장소 설정
공식 Docker 저장소를 yum에 추가합니다.
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
Docker CE(Community Edition) 설치
1. Docker 엔진 및 관련 패키지 설치
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
2. 설치 확인
docker version
3. Docker 서비스 시작 및 부팅 시 자동 실행 설정
sudo systemctl start docker
sudo systemctl enable docker
4. (선택) sudo 없이 Docker 명령어 사용
sudo usermod -aG docker $USER
위 명령 실행 후, 변경 사항을 적용하려면 로그아웃 후 재로그인하거나 시스템을 재부팅해야 합니다.
Docker 기본 사용 테스트
1. hello-world 이미지 다운로드
docker pull hello-world:latest
2. 다운로드한 이미지 목록 확인
docker images
3. hello-world 컨테이너 실행
docker run hello-world
위 명령이 정상적으로 실행되면 Docker가 올바르게 설치된 것입니다.
이미지 다운로드 실패 시 해결 방법
해외 레지스트리의 네트워크 불안정으로 인해 이미지 다운로드가 실패할 수 있습니다. 이 경우 국내 미러 레지스트리를 사용하여 해결합니다.
1. Docker 설정 디렉토리 생성
sudo mkdir -p /etc/docker
2. 미러 레지스트리 설정 파일 작성
sudo tee /etc/docker/daemon.json <<-EOF
{
"registry-mirrors": [
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://registry.docker-cn.com",
"https://hub-mirror.c.163.com",
"https://mirror.ccs.tencentyun.com"
]
}
EOF
3. 설정 적용 및 Docker 재시작
sudo systemctl daemon-reload
sudo systemctl restart docker
위 과정을 완료하면 안정적으로 Docker 이미지를 다운로드할 수 있습니다.