Windows에서 WSL2와 Ubuntu 설치 및 Docker 사용하기
- 목차
배경
Windows 환경에서 가장 접근하기 쉬운 Docker 설치 방법은 Docker Desktop를 이용하는 것이다. 하지만 Docker Desktop은 개인 용도로 사용한다면 무료지만 상업적으로 사용하려면 돈을 지불해야만 한다.
하지만 Docker Desktop이 아닌 Docker만 사용하는 것은 상업적으로 무료다. 그러므로 Windows에서 Linux 환경을 쓸 수만 있다면 Docker를 라이센스 문제 없이 상업적으로도 사용할 수 있다. 그걸 위하여 WSL2와 Ubuntu를 설치하고 해당 환경에서 Docker까지 설치해보도록 한다.
WSL2 설치
1. PowerShell을 관리자 권한으로 실행
2. `wsl --install` 명령어를 통해 WSL 설치
기본적으로 WSL2가 설치되는데, 혹시 모르니 다음 명령어를 입력하여 기본 버전을 2로 맞춰준다.
`wsl --set-default-version 2`
WSL2 설치가 되면 Ubuntu가 함께 자동으로 설치된다.
최근 추가 항목에서 Ubuntu를 확인할 수 있다.
최초 설치 시 `cd /mnt/c`를 통해 일반적인 내 파일들에 접근할 수 있다는 설명이 제공된다.
Ubuntu 설치
앞서 Ubuntu가 자동으로 설치되었는데 왜 다시 설치하지? 라고 생각할 수 있다. 다시 설치하는 이유는, 위에서 설치한 Ubuntu의 기본 버전은 24.04이기 때문이다. Ubuntu의 경우 20.04 또는 22.04 버전이 안정적이고 검증되어 널리 사용되고 있다. 24.04는 Nvidia 등 설치에 복잡하거나 지원하지 않는 서비스가 있어 문제가 발생한다.
다시 PowerShell로 가서 `wsl --install -d Ubuntu-22.04` 명령어를 입력하여 내가 원하는 Ubuntu 버전을 설치해주자.
이후 username과 password를 입력하여 설치를 완료해주자.
그럼 Ubuntu 22.04가 최근 추가 항목에 표시된다.
한편 앞서 설치한 Ubuntu의 버전이 24.04인지를 Ubuntu 내에서 `lsb_release -a` 명령어를 입력하여 확인할 수 있다.
Docker 설치
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
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
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io -y
아래는 각각의 명령어들이 수행하는 내용이다.
1. 시스템 업데이트 및 의존성 패키지 설치
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
2. Docker GPG 키 추가
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
3. Docker 저장소 추가
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
4. Docker 설치
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io -y
5. 사용자를 docker 그룹에 추가
sudo usermod -aG docker $USER
마지막으로 Docker가 올바르게 설치됐는지 확인해주자.
docker run hello-world
이렇게 나오면 정상적으로 설치가 완료된 것이다.
만약 `docker: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock:` 에러가 나온다면 앞서 docker 그룹에 유저를 추가한 게 제대로 적용이 되지 않은 것이므로 Ubuntu를 재실행해주자.
Docker 관리
- 시스템 부팅 시(Ubuntu 실행 시) 자동으로 시작되도록 설정
sudo systemctl start docker
sudo systemctl enable docker
- Docker 상태 확인
sudo systemctl status docker
- Docker 컨테이너 목록 확인
docker ps -a
- Docker 컨테이너 실행
docker run [옵션] 이미지명 [명령어] [인수...]
- `-d`: 백그라운드에서 실행
- `-p 호스트포트:컨테이너포트`: 포트 연결
- `--name 컨테이너이름`: 컨테이너 이름 지정
- `-v 호스트경로:컨테이너경로`: 볼륨 마운트
- 정지된 Docker 컨테이너 시작
docker start 컨테이너명_또는_ID
- Docker 컨테이너 정지하기
docker stop 컨테이너명_또는_ID
- 정지된 Docker 컨테이너 삭제하기
docker rm 컨테이너명_또는_ID
'데이터 분석' 카테고리의 다른 글
WSL Ubuntu에서 Vue.js 앱을 로컬호스트로 올리고 코드 수정하기 (0) | 2025.03.17 |
---|---|
Granger 인과관계 (0) | 2025.03.12 |
이동 평균 종류 및 python 구현 (0) | 2024.02.04 |