화. 8월 12th, 2025

D: 우분투에서 도커를 사용하면 개발 환경 구축이 쉬워지고, 다양한 애플리케이션을 컨테이너로 손쉽게 실행할 수 있습니다. 이번 포스팅에서는 우분투에 도커와 최신 버전의 도커 컴포즈(Docker Compose V2)를 설치하는 방법을 단계별로 상세히 설명드리겠습니다. 🚀

1. 사전 준비 작업 🔧

도커 설치 전에 시스템을 최신 상태로 업데이트합니다.

sudo apt update && sudo apt upgrade -y

필요한 패키지들을 설치합니다.

sudo apt install -y ca-certificates curl gnupg lsb-release

2. 도커 공식 GPG 키 및 저장소 추가 🔑

도커의 공식 GPG 키를 추가합니다.

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

도커 공식 저장소를 추가합니다. (우분투 버전에 맞게 설정)

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

3. 도커 엔진 설치 🏗️

저장소 정보를 업데이트한 후 도커를 설치합니다.

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

설치가 완료되면 도커 서비스를 시작하고 활성화합니다.

sudo systemctl start docker
sudo systemctl enable docker

4. 도커 컴포즈 V2 설치 �

도커 컴포즈 V2는 이제 도커 CLI의 플러그인으로 제공됩니다.

sudo apt install -y docker-compose-plugin

설치 확인:

docker compose version

출력 예시:

Docker Compose version v2.17.2

5. 설치 확인 및 테스트 ✅

도커가 정상적으로 설치되었는지 확인합니다.

sudo docker run hello-world

정상적으로 설치되었다면 다음과 같은 메시지가 출력됩니다:

Hello from Docker!
This message shows that your installation appears to be working correctly.
...

6. (선택) sudo 없이 도커 사용하기 👥

기본적으로 도커 명령은 root 권한이 필요합니다. sudo 없이 사용하려면 사용자를 docker 그룹에 추가합니다.

sudo usermod -aG docker $USER
newgrp docker  # 그룹 변경 적용

7. 도커 컴포즈 예제 실행 🚀

간단한 도커 컴포즈 예제를 실행해보겠습니다.

mkdir docker-compose-demo && cd docker-compose-demo
nano docker-compose.yml

다음 내용을 입력합니다:

version: '3'
services:
  web:
    image: nginx:alpine
    ports:
      - "8080:80"
  db:
    image: postgres:13
    environment:
      POSTGRES_PASSWORD: example

서비스 실행:

docker compose up -d

실행 중인 컨테이너 확인:

docker compose ps

8. 도커 및 도커 컴포즈 제거 🗑️

도커를 완전히 제거하려면:

sudo apt purge -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

9. 자주 발생하는 문제 해결 🔧

문제 1: 도커 명령어 실행 시 권한 오류 발생

Got permission denied while trying to connect to the Docker daemon socket

➡️ 해결: 사용자를 docker 그룹에 추가하고 로그아웃/로그인

문제 2: 도커 컴포즈 명령어가 작동하지 않음

Command 'docker-compose' not found

➡️ 해결: docker compose 명령어 사용 (V2는 이제 플러그인 형태)

10. 추가 팁 💡

  • 도커 스토리지 드라이버 변경: /etc/docker/daemon.json 파일 수정
  • 도커 시작 시 자동 실행 서비스 관리: sudo systemctl enable docker
  • 도커 로그 확인: journalctl -u docker.service

이제 우분투 시스템에서 도커와 도커 컴포즈를 자유롭게 사용할 수 있습니다! 🎉 컨테이너 기반 개발을 시작해보세요. 추가 궁금한 점이 있다면 댓글로 남겨주세요. 😊

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다