windows wsl docker 설치하기 (wsl2 ubuntu-22.04 활용)
windows에 wsl2를 활용하여 리눅스 환경을 구축하였으므로,
windows 도커데스크톱이 아닌 리눅스(wsl2 ubuntu-22.04에 docker 설치 정리해보려 한다
windows에 wsl2 설치하기는 아래의 글 참조
windows wsl 설치하여 linux 환경 세팅 하기 (wsl2 기준)
WSL란? Windows Subsystem for Windows 약자로 WSL1, WSL2 가 있으며 별도의 가상 머신 또는 이중 부팅 없이 Windows 컴퓨터에서 Linux 환경을 실행할 수 있는 Windows의 기능 여기서의 설치 및 환경 설명은 WSL2 기
vanilaeconomy.tistory.com
진행과정
1. 패키지 업데이트 및 업그레이드
2. 서드파티 소프트웨어를 설치하기 위한 준비 작업
3. 도커 GPG 키 다운로드 및 저장
4. 시스템 패키지 목록 최신화
5. 도커 설치 (도커 엔진, 컨테이너 런타임 패키지, 도커 CLI 도구 설치)
6. 유저계정에 도커 권한 추가
7. 도커 서비스 실행
8. 도커 이미지 실행 테스트 (hello-world)
1. 패키지 업데이트 및 업그레이드
sudo apt update -y
sudo apt upgrade -y
2. 서드파티 소프트웨어를 설치하기 위한 준비 작업
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
sudo : 관리자(root) 권한으로 실행
apt install : apt 패키지 관리자를 사용하여 지정된 패키지들을 설치
-y : 설치 과정에서 "설치하시겠습니까?"라는 확인 메시지를 자동으로 "예(y)"로 응답하여 진행
apt-transport-https : apt가 HTTPS를 통해 패키지를 다운로드할 수 있도록 지원하는 패키지
ca-certificates : SSL 인증서를 관리하는 패키지(보안 인증서가 올바르게 신뢰되도록 함)
curl : 데이터를 전송하거나 다운로드하는 명령줄 도구
software-properties-common : PPA(개인 패키지 저장소) 및 추가 소프트웨어 리포지토리 관리에 필요한 유틸리티
3. 도커 GPG 키 다운로드 및 저장
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
curl을 사용하여 Docker 공식 GPG 키를 다운로드합니다.
-f : HTTP 요청 실패 시 에러를 무시
-s : 출력 내용 숨김 (silent mode)
-S : 오류 발생 시 오류 메시지를 출력
-L : URL이 리디렉션 될 경우 따라감
| sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg : 다운로드한 GPG 키를 gpg --dearmor 명령어를 사용하여 바이너리 형식으로 변환하고, /usr/share/keyrings/docker-archive-keyring.gpg 파일에 저장
작업 이유
APT 패키지 관리자는 서드파티 저장소에서 다운로드한 패키지가 신뢰할 수 있는지 확인하기 위해 GPG 키를 사용
만약 이 키가 없으면 apt update 시 "NO_PUBKEY"와 같은 오류가 발생할 수 있습니다.
4. 시스템 패키지 목록 최신화
sudo apt update
sudo : 관리자(root) 권한으로 실행
apt update : 시스템의 패키지 목록을 최신 상태로 갱신
실제 동작
apt update는 패키지를 실제로 업그레이드하는 것이 아니라,
패키지 저장소에서 최신 정보를 가져오는 작업만 수행
/etc/apt/sources.list에 등록된 저장소에서 최신 패키지 목록을 다운로드하여
로컬 데이터베이스를 업데이트
5. 도커 설치 (도커 엔진, 컨테이너 런타임 패키지, 도커 CLI 도구 설치)
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo : 관리자(root) 권한으로 실행
apt install : apt 패키지 관리자를 사용하여 지정된 패키지들을 설치
-y : 설치 과정에서 "설치하시겠습니까? (Y/n)"라는 확인 메시지를 자동으로 "Yes"로 응답하여 진행
docker-ce (Docker Community Edition) : 오픈 소스 커뮤니티 버전의 Docker 엔진
Docker 컨테이너를 실행하고 관리할 수 있게 해 줌
docker-ce-cli (Docker Command Line Interface) : Docker 명령줄 도구(docker 명령어)를 제공
컨테이너 생성, 관리, 이미지 다운로드 등의 작업을 수행
containerd.io : 컨테이너 런타임(Container Runtime) 패키지 Docker가 컨테이너를 실행하는 핵심 구성 요소
#########################################################
Docker 엔진(docker-ce)이 설치
Docker CLI(docker-ce-cli)가 설치되어 명령줄에서 Docker를 사용할 수 있음
컨테이너를 실행하는 데 필요한 런타임(containerd.io)이 설치
6. 유저계정에 도커 권한 추가
wsl은 기본 root 계정이 아니라 사용자 계정이므로, 일반 계정은 docker group 권한을 추가해야 함
sudo usermod -aG docker $USER
7. 도커 서비스 실행
sudo service docker start
8. 도커 이미지 실행 테스트 (hello-world)
Docker Hub에 올라와 있는 hello-world image로 테스트를 진행해 보기
여기까지 wsl2 환경에서 도커 설치하는 과정을 정리해 보았습니다
회사 내 환경에서 처럼 내부망을 사용하는 경우에는 방화벽, 프록시 정책 등으로 인해
위에 과정이 매끄럽게 진행되지 않을 수 있습니다
그런 경우에 대해서도 추가적으로 정리를 해볼 예정입니다