Window11 에서 wsl2를 이용한 Docker 개발환경 구축하기

Docker

Language :

안녕하세요 Lovefield입니다.

간만에 집에 있는 컴퓨터를 교체하게 되면서 개발 환경을 다시 구성해야 하는 상황이 왔습니다. Window는 그동안 게임용으로만 사용하고 있었고, 개발용으로 생각하지 않았습니다. 하지만 컴퓨터를 옮겨가며 개발하기는 생각보다 귀찮았고, 결국 Window에서 개발 환경을 구성하기로 했습니다.

마침, Docker도 윈도우를 지원하는 상태였기에 처음에는 큰 고민 없이 Docker Desktop을 설치했습니다. 하지만 잘 구동하는 것 같던 Docker는 제대로 동작하지 못했습니다. 일부 다운로드를 진행한 이미지에 대해서 찾을 수 없는 이미지라는 로그만 뱉어낼 뿐이었죠.

여러 정보를 찾아보니 Window에서 Docker Desktop을 설치하면 WSL에 docker-desktop과 docker-desktop-data가 마운트 되어 있어야 하는 점을 발견했습니다. 하지만 제 컴퓨터에서는 docker-desktop만 마운트가 되어 있었고, 결국 정상적으로 동작하지 않았습니다.

고민하다가 Docker도 어차피 WSL 환경에 물려서 돌아가는 시스템이니 아예 WSL에 Ubuntu를 설치하고 개발 환경을 구성하는 게 낫겠다고 생각했습니다. 바로 실행에 옮겼고 결과는 생각보다 만족스러웠습니다. 중간에 권한 문제로 고생한 것을 빼면 말이죠. 자 이제 설치해 볼까요?

1. Linux용 Window 하위 시스템 설치

Plain Text

wsl -l -v

Powershell에서 위의 명령어를 통해 Linux용 Window 하위 시스템을 확인합니다. 없다는 메시지가 나온다면 안내에 따라 설치합니다.

2. 설치할 수 있는 Ubuntu 확인

Plain Text

wsl -l  online

위의 명령어를 실행해 설치가 가능한 리스트를 확인합니다.

3. Ubuntu-24.04 설치

Plain Text

wsl  install Ubuntu-24.04

위의 명령어를 실행해 Ubuntu-24.04를 설치해 줍니다.

4. Ubuntu 마운트

Plain Text

wsl -d Ubuntu-24.04

위의 명령어를 이용해 WSL에 Ubuntu를 마운트 해줍니다. 마운트가 완료되면 사용할 유저 이름과 비밀번호를 요구하게 됩니다. 과정을 완료하면 마운트된 Ubuntu에서 Powershell을 실행했던 위치를 바라보고 있습니다. exit로 종료해 줍니다.

터미널 설정으로 들어가면 프로필에 Ubuntu-24.04가 새로 생성되어 있습니다. 기본 프로필로 설정하고 사용하셔도 되며, 기본적인 모양을 개인 취향에 맞게 설정합니다.

5. Docker 설치

새로 터미널을 열어줍니다. 프로필은 Ubuntu-24.04 여야 합니다.
다음을 순서대로 실행해 Docker와 Docker compose를 설치해 줍니다.

Plain Text

sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" |  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update -y
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

과정을 다 끝냈다면 `docker -v` 명령어와 `docker compose help` 명령어를 통해 docker와 docker compose가 잘 설치됐는지 확인합니다.

docker로 올린 컨테이너의 포트는 윈도우에서도 접근이 가능하니 원하는 docker 환경을 설정하고 사용하시면 됩니다!

Lovefield

Web Front-End developer

하고싶은게 많고, 나만의 서비스를 만들고 싶은 변태스러운 개발자입니다.