진행 환경은 다음과 같다.
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.5 LTS
Release: 18.04
Codename: bionic
한 줄씩 실행해주자.
# sudo apt install docker 는 구버전
$ sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo apt-key fingerprint 0EBFCD88
$ sudo add-apt-repository "deb [arch=arm64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
# 버전 확인
$ sudo docker version
# docker 명령어 쓸 때마다 sudo 해주기 귀찮으니까
$ sudo usermod -aG docker $USER
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package docker-ce is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
docker-ce-cli:arm64
E: Package 'docker-ce' has no installation candidate
E: Unable to locate package docker-ce-cli
E: Unable to locate package containerd.io
E: Couldn't find any package by glob 'containerd.io'
E: Couldn't find any package by regex 'containerd.io'
설치 중에 이런 에러가... 난다면!
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable edge test"
그냥 install하면 beta가 설치될 가능성이 높으니, 버전을 확인하고 마지막 stable 버전을 깔아주자.
$ apt-cache madison docker-ce # 버전 확인 (docker-ce-cli도 동일함)
docker-ce | 5:19.03.13~1.2.beta2-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/test amd64 Packages
docker-ce | 5:19.03.12~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
docker-ce | 5:19.03.12~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/edge amd64 Packages
docker-ce | 5:19.03.12~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/test amd64 Packages
docker-ce | 5:19.03.11~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
...
2020.09.10 기준, stable 중 최신 버전은 5:19.03.12~3-0~ubuntu-bionic
이므로
$ sudo apt-get install docker-ce=5:19.03.12~3-0~ubuntu-bionic docker-ce-cli=5:19.03.12~3-0~ubuntu-bionic containerd.io
원인이 뭘까? 분명히 bionic/stable에 있다고 뜨는데 왜... 그냥 stable에서 하면 안되는 걸까...
버전 확인은 여기에서
20.09.10 기준 최신 버전은 1.27.0
이므로
# sudo apt install docker-compose 는 구버전
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# 버전 확인
docker-compose -v
References