본문 바로가기
information

윈도우 11에서 WSL2 개발 환경을 쉽고 빠르게 세팅하는 방법

by 10skfjk 2025. 6. 21.
반응형

윈도우 11에서 WSL2 개발 환경을 쉽고 빠르게 세팅하는 방법

 

 

 

목차

  1. WSL2란 무엇인가?
  2. WSL2 설치 전 준비 사항
  3. WSL2 설치 및 설정 단계별 가이드
    1. 필수 기능 활성화
    2. WSL 설치 명령어 실행
    3. 리눅스 배포판 설치 및 초기 설정
    4. WSL2 기본 배포판 설정
  4. Visual Studio Code 연동 및 개발 환경 구축
    1. VS Code 설치
    2. WSL 확장팩 설치
    3. VS Code에서 WSL 환경 사용하기
  5. Docker Desktop과 WSL2 연동
    1. Docker Desktop 설치
    2. WSL2 기반 엔진 설정
  6. 마무리하며

1. WSL2란 무엇인가?

윈도우 서브시스템 리눅스 2(WSL2)는 윈도우 11 환경에서 완전한 리눅스 커널을 구동할 수 있게 해주는 마이크로소프트의 기술입니다. 개발자들에게는 리눅스 기반의 개발 환경을 윈도우에서 직접 사용할 수 있다는 점에서 혁신적인 솔루션으로 각광받고 있습니다. 가상 머신과 달리 오버헤드가 적고, 윈도우 파일 시스템과의 상호 운용성이 뛰어나며, Docker와 같은 컨테이너 기술과의 연동도 매끄러워 많은 개발자들에게 필수적인 도구가 되고 있습니다. 이전 버전인 WSL1은 번역 계층을 통해 리눅스 시스템 호출을 윈도우 시스템 호출로 변환하는 방식이었지만, WSL2는 경량 유틸리티 가상 머신(VM) 내에서 실제 리눅스 커널을 실행하여 훨씬 더 높은 성능과 호환성을 제공합니다. 이를 통해 다양한 리눅스 기반 도구와 애플리케이션을 윈도우에서 거의 네이티브 환경처럼 활용할 수 있습니다. 예를 들어, 웹 개발을 위한 Node.js, Python, Ruby 등의 런타임 환경부터 데이터 과학을 위한 Jupyter 노트북, 그리고 인프라 관리를 위한 Ansible, Terraform 등 다양한 도구를 WSL2 환경에서 효율적으로 운영할 수 있습니다. 이는 특히 백엔드 개발자나 데브옵스 엔지니어에게 큰 이점으로 작용하며, 윈도우에서 리눅스 서버 환경을 손쉽게 시뮬레이션하고 테스트할 수 있게 해줍니다.


2. WSL2 설치 전 준비 사항

WSL2를 설치하기 전에 몇 가지 중요한 준비 사항이 있습니다. 첫째, 윈도우 11 운영 체제가 설치되어 있어야 합니다. WSL2는 윈도우 10 버전 2004 이상(빌드 19041 이상)에서도 지원되지만, 윈도우 11에서 더욱 최적화된 성능과 사용자 경험을 제공합니다. 윈도우 업데이트를 통해 최신 버전을 유지하는 것이 좋습니다. 둘째, 컴퓨터의 BIOS/UEFI 설정에서 가상화 기술이 활성화되어 있어야 합니다. 인텔 프로세서의 경우 Intel VT-x, AMD 프로세서의 경우 AMD-V로 불리며, 대부분의 최신 컴퓨터에서는 기본적으로 활성화되어 있지만, 만약 비활성화되어 있다면 컴퓨터 부팅 시 BIOS/UEFI 설정으로 들어가서 수동으로 활성화해야 합니다. 이 설정은 주로 "Virtualization Technology", "Intel VT-x", "AMD-V", "SVM Mode" 등의 이름으로 표기됩니다. 셋째, 충분한 디스크 공간이 확보되어 있어야 합니다. 리눅스 배포판과 개발 도구들을 설치하게 되면 상당한 용량을 차지할 수 있으므로, 최소 20GB 이상의 여유 공간을 확보하는 것이 좋습니다. 마지막으로, 안정적인 인터넷 연결이 필요합니다. WSL2 및 리눅스 배포판 다운로드 과정에서 대용량 데이터를 다운로드해야 하므로, 불안정한 네트워크 환경은 설치를 지연시키거나 실패하게 만들 수 있습니다.


3. WSL2 설치 및 설정 단계별 가이드

WSL2 설치는 몇 가지 간단한 명령어로 이루어집니다. 이 과정을 통해 윈도우 11에 리눅스 환경을 완벽하게 구축할 수 있습니다.

3.1. 필수 기능 활성화

먼저, WSL을 사용하기 위해 필요한 윈도우 기능을 활성화해야 합니다. 관리자 권한으로 PowerShell 또는 명령 프롬프트를 실행하고 다음 명령어를 입력합니다.

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

첫 번째 명령어는 윈도우 서브시스템 리눅스 기능을 활성화하고, 두 번째 명령어는 가상 머신 플랫폼 기능을 활성화합니다. 이 두 가지 기능은 WSL2가 제대로 작동하기 위해 필수적입니다. 명령어를 실행한 후에는 컴퓨터를 재부팅해야 변경 사항이 적용됩니다. 재부팅은 필수적이므로, 다른 작업을 진행하기 전에 반드시 완료해야 합니다.

3.2. WSL 설치 명령어 실행

재부팅 후, 다시 관리자 권한으로 PowerShell 또는 명령 프롬프트를 실행하고 다음 명령어를 입력합니다.

wsl --install

이 명령어는 WSL을 자동으로 설치하고, 기본 리눅스 배포판(대부분 Ubuntu)을 다운로드하여 설치해 줍니다. 이 과정은 인터넷 속도에 따라 몇 분에서 수십 분까지 소요될 수 있습니다. 만약 특정 배포판을 설치하고 싶다면 wsl --install -d <배포판 이름> 형식으로 명령어를 사용할 수 있습니다. 예를 들어, wsl --install -d Debian과 같이 입력하면 됩니다. wsl --list --online 명령어를 통해 사용 가능한 배포판 목록을 확인할 수 있습니다. 설치가 완료되면 리눅스 터미널이 자동으로 실행되며, 사용자 이름과 비밀번호를 설정하라는 메시지가 나타납니다. 이 사용자 이름과 비밀번호는 WSL 내부에서 사용할 리눅스 계정 정보이므로 잘 기억해두세요.

3.3. 리눅스 배포판 설치 및 초기 설정

wsl --install 명령어를 통해 기본 배포판이 설치되었다면, 이제 초기 설정을 진행합니다. 터미널에서 리눅스 사용자 이름과 비밀번호를 설정하고 나면, 기본적인 쉘 환경이 준비됩니다. 가장 먼저 해야 할 일은 패키지 목록을 업데이트하고 기존 패키지를 업그레이드하는 것입니다. 다음 명령어를 실행하여 시스템을 최신 상태로 유지하세요.

sudo apt update
sudo apt upgrade -y

이 명령어는 리눅스 환경에서 필요한 소프트웨어 패키지들을 최신 버전으로 업데이트하여 보안 취약점을 해결하고, 새로운 기능을 사용할 수 있도록 합니다. sudo는 관리자 권한으로 명령어를 실행하는 것을 의미하며, apt는 데비안 기반 리눅스 배포판(Ubuntu 포함)에서 패키지를 관리하는 도구입니다.

3.4. WSL2 기본 배포판 설정

만약 여러 리눅스 배포판을 설치했거나, 설치된 배포판이 WSL1으로 설정되어 있다면, 이를 WSL2로 변경해야 합니다. 먼저 현재 설치된 WSL 배포판 목록과 버전을 확인합니다.

wsl -l -v

이 명령어는 "NAME", "STATE", "VERSION" 세 가지 정보를 보여줍니다. "VERSION" 열에 "2"가 아닌 "1"로 되어 있는 배포판이 있다면, 다음 명령어를 사용하여 WSL2로 변환할 수 있습니다.

wsl --set-version <배포판 이름> 2

예를 들어, "Ubuntu"라는 이름의 배포판을 WSL2로 변경하려면 wsl --set-version Ubuntu 2를 입력합니다. 이 과정은 시간이 다소 소요될 수 있습니다. 또한, 향후 설치될 모든 배포판을 기본적으로 WSL2로 설정하려면 다음 명령어를 사용합니다.

wsl --set-default-version 2

이렇게 하면 이후에 wsl --install 등으로 설치되는 모든 리눅스 배포판은 자동으로 WSL2 모드로 설정됩니다.


4. Visual Studio Code 연동 및 개발 환경 구축

WSL2 환경에서 개발 효율을 극대화하려면 Visual Studio Code(VS Code)와의 연동이 필수적입니다. VS Code는 WSL2 환경 내에서 직접 코드를 편집하고 디버깅할 수 있는 강력한 기능을 제공합니다.

4.1. VS Code 설치

아직 VS Code가 설치되어 있지 않다면, Visual Studio Code 공식 웹사이트에서 윈도우용 설치 파일을 다운로드하여 설치합니다. 설치 과정은 일반적인 윈도우 프로그램 설치와 동일하며, 특별한 설정 없이 "다음" 버튼을 눌러 진행하면 됩니다. VS Code는 다양한 프로그래밍 언어와 기술을 지원하며, 확장 기능을 통해 더욱 강력한 개발 환경을 구축할 수 있습니다.

4.2. WSL 확장팩 설치

VS Code를 실행한 후, 좌측 사이드바의 확장(Extensions) 탭(또는 Ctrl+Shift+X 단축키)을 클릭하고 "WSL"을 검색합니다. 검색 결과에서 "Remote - WSL" 확장팩을 찾아 설치합니다. 이 확장팩은 VS Code가 WSL2 환경에 연결하여 작업 공간을 직접 관리할 수 있도록 해주는 핵심 도구입니다. 이 확장팩이 설치되면 VS Code는 WSL2 내부에 VS Code 서버를 자동으로 설치하고 실행하여, 윈도우에서 실행되는 VS Code 클라이언트와 WSL2 내부의 개발 환경 간의 원활한 통신을 가능하게 합니다.

4.3. VS Code에서 WSL 환경 사용하기

"Remote - WSL" 확장팩이 설치되면, VS Code 좌측 하단에 초록색의 "원격 창 열기" 버튼이 나타납니다. 이 버튼을 클릭하거나 Ctrl+Shift+P를 눌러 명령 팔레트를 열고 "WSL: New Window" 또는 "WSL: Open Folder in WSL"을 선택합니다. "WSL: New Window"를 선택하면 새로운 VS Code 창이 WSL 환경에 연결된 상태로 열리며, "WSL: Open Folder in WSL"을 선택하면 WSL2 파일 시스템 내의 특정 폴더를 열 수 있습니다.

VS Code가 WSL 환경에 연결되면, 터미널(Terminal) 메뉴에서 "New Terminal"을 선택하면 WSL2 내부의 리눅스 쉘이 실행되는 것을 확인할 수 있습니다. 이제 리눅스 환경에서 개발 도구들을 설치하고 코드를 작성하며 디버깅하는 모든 작업을 윈도우 데스크톱의 VS Code에서 직접 수행할 수 있습니다. 예를 들어, Node.js 프로젝트를 개발한다면, WSL2 터미널에서 nvm install node 명령어로 Node.js를 설치하고, VS Code에서 해당 프로젝트 폴더를 열어 개발을 진행할 수 있습니다. 윈도우 파일 시스템과 WSL2 파일 시스템 간의 접근도 매우 용이합니다. WSL2에서 윈도우 파일에 접근하려면 /mnt/c (C 드라이브의 경우) 경로를 사용하면 되고, 윈도우에서 WSL2 파일에 접근하려면 파일 탐색기에서 \\wsl$ 경로를 입력하면 됩니다.


5. Docker Desktop과 WSL2 연동

컨테이너 기반 개발을 한다면 Docker Desktop과 WSL2의 연동은 거의 필수적입니다. Docker Desktop은 WSL2를 백엔드 엔진으로 사용하여 윈도우 환경에서 리눅스 컨테이너를 효율적으로 실행할 수 있게 해줍니다.

5.1. Docker Desktop 설치

Docker Desktop 공식 웹사이트(https://www.docker.com/products/docker-desktop)에서 윈도우용 Docker Desktop 설치 파일을 다운로드하여 설치합니다. 설치 과정에서 "Use WSL 2 instead of Hyper-V (recommended)" 옵션이 기본적으로 체크되어 있는지 확인하세요. 이 옵션은 Docker 엔진이 WSL2 기반으로 작동하도록 설정하여 성능과 호환성을 최적화합니다. 설치가 완료되면 Docker Desktop이 자동으로 실행됩니다. 처음 실행 시 일부 구성 요소 다운로드 및 초기화 과정이 진행될 수 있습니다.

5.2. WSL2 기반 엔진 설정

Docker Desktop이 실행되면, 트레이 아이콘에서 Docker 아이콘을 우클릭하여 "Settings"로 들어갑니다. "Resources" 탭 아래 "WSL Integration" 항목으로 이동합니다. 여기서 Docker 엔진을 사용할 WSL2 배포판을 선택할 수 있습니다. 일반적으로 "Enable integration with my default WSL distro" 옵션이 체크되어 있거나, 특정 배포판에 대해 활성화되어 있는지 확인합니다. 이 설정을 통해 Docker 명령어가 윈도우 터미널이나 VS Code의 WSL 터미널에서 모두 정상적으로 작동하게 됩니다. 예를 들어, docker run hello-world 명령어를 실행하면 WSL2 환경 내에서 리눅스 기반의 컨테이너가 성공적으로 실행되는 것을 확인할 수 있습니다. 이제 컨테이너 기반의 개발, 배포, 테스트 환경을 윈도우 11에서 효율적으로 구축하고 관리할 수 있게 됩니다.


6. 마무리하며

이 블로그 게시물을 통해 윈도우 11에서 WSL2 기반의 개발 환경을 쉽고 빠르게 설정하는 방법을 알아보았습니다. WSL2는 윈도우 사용자들에게 리눅스 개발 환경의 강력함과 유연성을 제공하며, Visual Studio Code 및 Docker Desktop과의 완벽한 통합을 통해 생산성을 크게 향상시킬 수 있습니다. 이제 여러분은 윈도우와 리눅스 환경의 장점을 모두 활용하여 더욱 효율적이고 즐거운 개발 경험을 누릴 수 있을 것입니다. WSL2는 지속적으로 발전하고 있으며, 다양한 개발 요구 사항을 충족시킬 수 있는 잠재력을 가지고 있습니다. 이 가이드가 여러분의 개발 여정에 도움이 되기를 바랍니다.

 

더 자세한 참고자료는 아래를 참고하세요.

 

더 자세한 참고자료 보기

 

 

반응형