ubuntu 서버에서 docker를 통해 django로 생성
한 서비스를 배포하기 하려고 한다. 이를 위해 docker를 설치했다.
공식 문서도 참고하였으나, 좀 어려웠던 부분이 있어 여러 레퍼런스를 찾아 설치했던 경험을 메모해두려 한다.
sudo apt update
sudo apt upgrade -y
sudo apt install -y ca-certificates \
curl \
gnupg \
lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
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
sudo apt-get update
# 지정이 없으면 최신 버전으로 설치된다
sudo apt-get install docker-ce docker-ce-cli containerd.io
docker --version
# 결과
Docker version 20.10.22, build 3a2c30b
혹은
sudo docker version
# 결과
Client: Docker Engine - Community
Version: 20.10.22
API version: 1.41
Go version: go1.18.9
Git commit: 3a2c30b
Built: Thu Dec 15 22:28:08 2022
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.22
API version: 1.41 (minimum version 1.12)
Go version: go1.18.9
Git commit: 42c8b31
Built: Thu Dec 15 22:25:58 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.14
GitCommit: 9ba4b250366a5ddde94bb7c9d1def331423aa323
runc:
Version: 1.1.4
GitCommit: v1.1.4-0-g5fd4c4d
docker-init:
Version: 0.19.0
GitCommit: de40ad0
sudo usermod -aG docker $USER
docker 사용 시, 여러 컨테이너들을 한 번에 올리고 싶을 때는 docker compose를 사용해야 하므로 같이 설치해 주었다.
sudo apt install docker-compose-plugin
# 설치 후 버전 확인
docker compose version
# 결과
Docker Compose version v2.14.1
docker desktop만 설치하여 편리하게 사용하다, ubuntu에서는 여러 설치 및 등록을 해주어야 했어서 복잡했다.
하지만 생각해보면 desktop 애플리케이션은 설치는 간단해도 GUI로 설정을 바꾸거나 할 일은 별로 없으니 각각의 장단점이 있는 듯 하다.