본문 바로가기
Cloud/docker

[docker] 리눅스(우분투)환경에서 도커 설치 방법

by 근육곰돌이 2023. 2. 16.
728x90

 

이번 포스팅은 리눅스(ubuntu 20.04)에서 도커를 설치하는 방법에 대해 기술합니다.
추후 쿠버네티스 설치를 하기위해선 도커가 필요합니다.

(요즘엔 도커가 없어지고 containerd가 대체된다고 합니다. 그에 대해선 추후 포스팅하려고 합니다.)

 

저는 우분투 20.04에서 도커를 설치하였습니다. 다른 버전도 형식은 동일하니 방법 참고하시면 됩니다.^^

 

설치 전 - 우분투 버전 확인

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.4 LTS
Release:        20.04
Codename:       focal

설치 전 APT 업데이트 

sudo apt-get update

필요한 패키지 설치

sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

 

도커 GPG key 추가

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

도커 레파지토리 등록 전 수행해야 하며 gpg key를 설치하지 않으면 아래 와 같이 에러가 발생한다.

W: GPG error: https://download.docker.com/linux/ubuntu focal InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 7EA0A9C3F273FCD8
E: The repository 'https://download.docker.com/linux/ubuntu focal InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

 

도커 레파지토리 등록

echo \
  "deb [arch=$(dpkg --print-architecture) 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

 

도커 설치

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

 

도커 설치 확인

[TEST][09:47:53][magnuxx@magnuxx-virtual-machine ~] 
$ sudo docker version
Client: Docker Engine - Community
 Version:           20.10.14
 API version:       1.41
 Go version:        go1.16.15
 Git commit:        a224086
 Built:             Thu Mar 24 01:48:02 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.14
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.15
  Git commit:       87a90dc
  Built:            Thu Mar 24 01:45:53 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.5.11
  GitCommit:        3df54a852345ae127d1fa3092b95168e4a88e2f8
 runc:
  Version:          1.0.3
  GitCommit:        v1.0.3-0-gf46b6ba
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

 

도커 구동 확인

sudo systemctl status docker
root@m-k8s:/etc/apt/trusted.gpg.d# sudo systemctl status docker
[0m docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2022-04-07 00:25:39 UTC; 1min 47s ago
TriggeredBy: [0m docker.socket
       Docs: https://docs.docker.com
   Main PID: 19022 (dockerd)
      Tasks: 8
     Memory: 28.5M
     CGroup: /system.slice/docker.service
             붴19022 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

 

시스템 재시작이 되더라도 도커 실행설정

sudo systemctl enable docker
반응형