Ubuntu에 Docker 설치하기: 가장 쉽고 빠른 가이드
도커를 사용하면 애플리케이션을 컨테이너라는 격리된 환경에 패키징하여 어디서든 동일하게 실행할 수 있습니다.
왜 공식 리포지토리를 사용할까요?
Ubuntu의 기본 apt 저장소에도 도커가 있지만, 최신 버전이 아닐 수 있습니다. 도커 공식 리포지토리를 직접 추가하면 항상 최신 버전의 도커 엔진을 안정적으로 설치하고 업데이트할 수 있습니다.
1단계: 시스템 준비 및 사전 패키지 설치
가장 먼저, 패키지 관리자(APT)가 HTTPS를 통해 저장소에 접근하고, 필요한 도구들을 사용할 수 있도록 관련 패키지들을 설치합니다.
1. 패키지 목록 업데이트
먼저 로컬 패키지 목록을 최신 상태로 갱신합니다.
sudo apt update
2. 필수 패키지 설치
apt가 HTTPS를 통해 리포지토리를 사용하는 데 필요한 패키지들을 설치합니다.
sudo apt install apt-transport-https ca-certificates curl software-properties-common
2단계: Docker 공식 리포지토리 추가
이제 시스템에 도커의 공식 소스를 등록하여 apt가 도커를 찾아 설치할 수 있도록 설정합니다.
3. Docker GPG 키 추가
다운로드할 패키지가 도커에서 공식적으로 배포한 것인지 확인하기 위해 GPG 키를 시스템에 추가합니다. 이 과정은 보안을 위해 필수적입니다.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
4. Docker 리포지토리 설정
아래 명령어를 실행하여 도커의 공식 APT 리포지토리를 시스템의 소스 목록에 추가합니다.
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
3단계: Docker 엔진 설치
모든 준비가 끝났습니다. 이제 실제로 도커를 설치할 차례입니다.
5. 패키지 목록 다시 업데이트
새로 추가한 도커 리포지토리의 정보를 가져오기 위해 패키지 목록을 한 번 더 업데이트합니다.
sudo apt update
6. Docker 엔진 설치
docker-ce (Community Edition), docker-ce-cli, containerd.io를 함께 설치합니다.
sudo apt install docker-ce docker-ce-cli containerd.io
7. 설치 확인
설치가 완료되면 아래 명령어로 도커 버전을 확인하여 성공적으로 설치되었는지 검증합니다.
sudo docker --version
출력 예시:
Docker version 27.0.3, build 7d41125
4단계: Docker 서비스 실행 및 권한 설정
도커를 설치한 후, 서비스를 실행하고 사용 편의성을 위한 몇 가지 추가 설정을 진행합니다.
8. Docker 서비스 시작 및 자동 실행 설정
도커 데몬을 시작하고, 시스템이 부팅될 때마다 자동으로 실행되도록 활성화합니다.
sudo systemctl start docker
sudo systemctl enable docker
9. sudo 없이 Docker 사용하기 (선택 사항)
매번 sudo를 입력하는 것이 번거롭다면, 현재 사용자를 docker 그룹에 추가하세요.
sudo usermod -aG docker ${USER}
중요: 위 명령어를 실행한 후에는 변경 사항을 적용하기 위해 시스템에서 로그아웃했다가 다시 로그인하거나, 터미널에서 아래 명령어를 실행해야 합니다.
newgrp docker
10. 최종 테스트
모든 설정이 완료되었습니다, 간단한 hello-world 컨테이너를 실행하여 도커가 완벽하게 작동하는지 최종 확인합니다.
docker run hello-world'인프라' 카테고리의 다른 글
| [리눅스 뻘짓 일기] 루트 파티션 변경 하기 (0) | 2025.04.08 |
|---|---|
| [문제 해결] echo 와 printf (0) | 2024.12.11 |
| [TInypilot] Tinypilot 도커로 컨테이너화 해보기 (2) | 2024.09.01 |
| [ubuntu 22.04] lxc 설정하기 (1) | 2024.08.31 |
| [RaspberryPI] 라즈베리 파이 dwc 커스텀 usb_hid_gadget 설정 (4) | 2024.08.30 |