$ sudo apt-get update && \
sudo apt-get install -y apt-transport-https ca-certificates curl 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=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" && \
sudo apt-get update && \
sudo apt-get install -y docker-ce && \
sudo usermod -aG docker ubuntu && \
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/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 -v # Docker 버전 확인
$ docker compose version # Docker Compose 버전 확인

강의록의 명령어를 그대로 실행하면 다음과 같은 에러가 발생했다.
Package docker-ce is not available, but is referred to by another package.
E: Package 'docker-ce' has no installation candidate
강의에서 사용하는 방식은 Docker 공식 저장소를 추가하여 docker-ce를 설치하고,
Docker Compose v1을 별도로 다운로드하는 방식이다.
현재 실습 환경에서는 이미 Ubuntu 패키지 저장소를 통해 Docker를 설치할 수 있고,
Docker Compose 역시 v2 패키지를 사용할 수 있기 때문에 아래의 방식으로 진행한다.
패키지 목록을 업데이트하고 Docker를 설치한다.
sudo apt update
sudo apt install -y docker.io
docker -v
Docker Compose v2를 설치한다.
sudo apt install -y docker-compose-v2
docker compose version
Docker Compose v1에서는 docker-compose 명령어를 사용했지만,
Compose v2부터는 docker compose와 같이 하이픈 없이 사용한다.

ubuntu 사용자가 sudo 없이 Docker 명령어를 사용할 수 있도록
docker 그룹에 추가한다.
sudo usermod -aG docker ubuntu
그룹 변경 사항은 현재 로그인 세션에 바로 적용되지 않으므로 SSH 연결을 종료한 뒤 다시 접속한다.
exit
docker ps
sudo 없이 정상적으로 실행된다면 설정이 완료된 것이다.







