반응형

(Docker)도커 - 리눅스 우분투(Ubuntu) 20.04에 도커 설치하기

 

이번 포스팅은 아래 도커 홈페이지(docs.docker.com)에 나와있는 도커 설치 문서를 참조하였습니다.

 

Install Docker Engine on Ubuntu

 

docs.docker.com

 

도커를 우분투(Ubuntu) 리눅스에 설치하는 방법은 3가지 방법이 있습니다.

  1. 도커 레파지토리를 설정하고 인터넷을 통해 apt 명령으로 도커를 설치하는 방법
  2. 인터넷이 안될 경우 .deb 패키지 파일을 다운로드하여 dpkg 명령어로 설치하는 방법
  3. 도커 사이트에서 제공하는 설치용 스크립트 (sh)파일을 받아 실행하여 설치하는 방법

 

레파지토리를 설정하고 apt 명령어로 설치하기

만약 이전버전이 설치되어 있다면 먼저 삭제를 진행해 줍니다.

(apt remove는 환경설정 파일은 남기고 패키지를 삭제합니다.)

$ sudo apt-get remove docker docker-engine docker.io containerd runc

기존 도커 삭제

 

다음은 HTTPS를 통해 도커 저장소를 사용할 수 있도록 하기 위해

  1. 패키지 목록을 업데이트하고.
  2. 필수 패키지를 설치합니다.
 $ sudo apt-get update

패키지 목록 업데이트

$ sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release

필수 패키지 설치

 

다음은 Docker와 암호화된 통신을 하기 위해 도커 공식 GPG 키를 추가합니다.

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

GPG키 추가

 

현재는 레파지토리에 도커 설치 파일이 존재하지 않습니다.

(도커 설치파일 3개: docker-ce, docker-ce-cli, containerd.io)

apt list 목록에서 docker-ce, containerd.io 문자를 포함란 패키지 검색

 

apt로 도커를 설치하기 위해서 도커 stable 레파지토리를 추가해주어야 합니다. (저는 amd64 입니다)

# cpu가 x86_64 또는 amd64계열일 경우
$ echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# cpu가 armhf계열일 경우
$ echo "deb [arch=armhf signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# cpu가 arm64계열일 경우
$ echo "deb [arch=arm64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

레파지토리 생성 및 cat으로 확인

 

이제 패키지 목록을 업데이트하고, 목록에서 도커 설치 패키지가 존재하는지 확인합니다.

$ sudo apt-get update

패키지 목록에 도커 패키지가 검색 존재

 

이제 apt install 명령으로 docker-ce, docker-ce-cli, dontainerd.io를 설치합니다.

$ sudo apt-get install docker-ce docker-ce-cli containerd.io

 

만약 특정 버전의 도커엔진(Docker Engine)을 설치하려면 저장소에서 사용 가능한 버전을 확인한 후 설치할 버전을 옵션으로 추가 입력해줍니다. (버전 부분 5:20.10.6~3-0~ubuntu-focal)

$ sudo apt-cache madison docker-ce docker-ce-cli

$ sudo apt-get install docker-ce=<설치할버전> docker-ce-cli=<설치할버전> containerd.io

 

우분투에서는 도커를 설치 완료하면 자동실행(running)되며 서버 재기동시 자동시작 기능도 enable 됩니다.

systemctl status docker

 

이제 도커 버전을 확인하여 클라이언트와 서버가 설치된 것을 확인합니다.

(sudo로 확인해야 서버 버전이 나옵니다)

$ sudo docker version

도커 버전확인

 

도커를 삭제하고 싶다면 아래 명령어를 입력합니다.

(apt purge는 패키지와 함께 환경설정 파일도 삭제합니다. --auto-remove 옵션은 불필요한 의존성 패키지도 함께 삭제합니다.)

$ sudo apt-get purge --auto-remove docker-ce docker-ce-cli containerd.io

도커 제거

 

패키지를 제거하여도 호스트의 이미지, 컨테이너, 볼륨 또는 사용자 정의된 구성 파일은 자동으로 제거되지 않습니다. 아래 명령어로 완전 삭제를 해줘야 합니다.

 $ sudo rm -rf /var/lib/docker
 $ sudo rm -rf /var/lib/containerd

찌꺼기 완전 삭제

 

 

.deb 파일을 다운로드하여 dpkg 명령어로 설치하기

먼저 사용하고 있는 우분트의 버전 별 명칭을 확인하시기 바랍니다.

버전 번호 코드명 배포일 지원기간 커널버전
16.04 LTS Xenial Xerus 2016년 04월 21일 2021년 04월
2024년 04월 (ESM)
4.4
16.10 Yakkety Yak 2016년 10월 13일 2017년 07월 20일 4.8
17.04 Zesty Zapus 2017년 04월 13일 2018년 01월 13일 4.10
17.10 Artful Aardvark 2017년 10월 19일 2018년 07월 19일 4.13
18.04 LTS Bionic Beaver 2018년 4월 26일 2023년 04월
2028년 04월 (ESM)
4.15
18.10 Cosmic Cuttlefish 2018년 10월 18일 2019년 07월 18일 4.18
19.04 Disco Dingo 2019년 04월 18일 2020년 01월 23일 5.0
19.10 Eoan Ermine 2019년 10월 17일 2020년 07월 5.3
20.04 LTS Focal Fossa 2020년 4월 23일 2025년 04월
2030년 04월 (ESM)
5.4
20.10 Groovy Gorilla 2020년 10월 22일 2021년 07월 TBA

 

다음은 아래 주소로 이동에서 본인 리눅스 버전에 맞는 폴더로 이동을 합니다.

https://download.docker.com/linux/ubuntu/dists/

저는 우분투 20.04 버전을 사용하고 있어 focal로 이동합니다.

uname -a
도커 설치파일 저장 웹사이트

 

리눅스 코드명 폴더 다음은 pool 디렉터리로 이동하고, 다음은 stable 폴더로 이동합니다.

이후 나오는 cpu에 맞는 디렉토리로 이동합니다.

이후 최신 버전 파일들 주소를 확인합니다.

 

curl -O <인터넷주소> 명령어로 파일들을 다운로드합니다.

curl -O 주소
deb 파일 검색

 

폴더 내에 있는 deb 파일을 모두 설치해줍니다.

$ sudo dpkg -i *.deb

deb 파일 모두 설치

 

도커 버전을 확인해 봅니다.

버전확인

 

dpkg로 설치를 했기 때문에 제거도 dpkg 명령어를 이용해서 삭제를 합니다.

$ sudo dpkg --purge docker-scan-plugin docker-ce docker-ce-cli docker-ce-rootless-extras containerd.io

dpkg --puge 패키지 삭제

 

패키지를 제거하여도 호스트의 이미지, 컨테이너, 볼륨 또는 사용자 정의된 구성 파일은 자동으로 제거되지 않습니다. 아래 명령어로 완전 삭제를 해줘야 합니다.

 $ sudo rm -rf /var/lib/docker
 $ sudo rm -rf /var/lib/containerd

찌꺼기 완전 삭제

 

 

설치용 스크립트 (sh)파일을 받아 실행하여 설치하는 방법

curl 옵션을 이용하여 도커 홈페이지에서 스크립트 파일을 다운로드하여 "get-docker.sh" 이름으로 저장합니다.

 $ curl -fsSL https://get.docker.com -o get-docker.sh

스크립트 파일 다운로드

 

다음은 스크립트를 실행하여 도커를 설치해줍니다.

$ sudo sh get-docker.sh

스크립트로 도커설치

 

도커 버전을 확인합니다.

도커 버전 확인

 

(Docker)도커 전체보기

 

'(Docker)도커' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

반응형