WSL(Windows Subsystem for Linux)은 Microsoft에서 개발한 Windows 운영 체제의 하위 시스템으로, Linux 커널과 호환성을 가지며 Linux 배포판을 Windows 운영 체제에서 실행할 수 있게 해주는 기술이다.
WSL을 사용하면 Windows 컴퓨터에서 Linux 명령어 및 유틸리티를 실행하고, Linux용 소프트웨어를 설치하고 사용할 수 있다.
Docker는 Windows와 Linux 버전을 제공하지만, Windows 환경에서 사용하려면 따로 설정해줘야 하는 부분들이 많기 때문에 Linux 환경에서 Docker를 사용하기 위해 WSL을 설치한다.
WSL2를 사용해 Linux 커널을 Windows와 통합해서 사용할 것이다.
참고
WSL은 무엇인가?
우선 Windows PowerShell을 관리자 권한으로 실행한다.
아래 명령어를 입력하는데 이게 무슨 명령어인지 알기 위해 하나하나 살펴보자
// Linux용 Windows 하위 시스템 사용
# dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe
: Deployment Imaging Service Management Tool로, Windows 이미지 및 구성 관리에 사용되는 도구다.
/online
: 명령어가 현재 실행 중인 Windows 인스턴스에 적용됨을 나타낸다.
/enable-feature
: 기능(Feature)을 활성화하는 명령어다.
/featurename
:(기능명): WSL을 활성화하기 위한 기능의 이름을 지정한다. 이 경우, WSL을 활성화하는데 사용된다.
/all
: 모든 패키지를 대상으로 명령어를 실행하도록 지시한다.
/norestart
: 명령어 실행 후 시스템을 재시작하지 않도록 지시한다.
// Virtual Machine 기능 사용
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
명령어를 올바르게 실행하기 위해서는 옵션과 값 사이에 띄어쓰기를 사용해야 한다. 띄어쓰기는 명령어와 옵션 또는 값 사이를 구분하는데 사용된다.
배포 이미지 서비스 및 관리 도구
버전: 10.0.22621.1
이미지 버전: 10.0.22621.2428
기능을 사용하도록 설정하는 중
[==========================100.0%==========================]
작업을 완료했습니다.
실행에 성공하면 위의 문구가 출력된다.
현재 WSL은 1버전이므로 2버전으로 업데이터하기 위해 패키지를 설치해야 한다.
최신 패키지 설치
클릭시 바로 다운로드
설치 후 다시 터미널에 명령어를 아래 명령어를 입력한다.
// 기본 wsl 버전 설정
wsl --set-default-version 2
WSL 2와의 주요 차이점에 대한 자세한 내용은 https://aka.ms/wsl2를 참조하세요
작업을 완료했습니다.
Microsoft Store에서 Linux 배포판을 다운받는다.
다운받은 Linux 배포판을 Get을 눌러 배포한다.
// 배포판 wsl 버전 변경
wsl --set-version <distribution name> <versionNumber>
// ex: wsl --set-version Ubuntu-18.04 2
ubuntu 18.04 를 배포할 것이다. 만약 배포된 ubuntu의 wsl 버전이 1이라면 위 명령어를 사용해 2로 변경해준다.
wsl -l -v
명령어로 설치된 Linux 배포판 목록과 버전을 확인할 수 있다.
이제 Windows에서 Linux 환경인 Ubuntu를 사용할 수 있다.
Docker Desktop은 Docker를 MacOS 및 Windows 운영 체제에서 사용할 수 있게 하는 공식적인 Docker 애플리케이션이다.
Docker Desktop은 Docker 엔진, 컨테이너 실행 환경, 컨테이너 관리, Kubernetes 지원, 인프라스트럭처 관리, GUI 및 CLI와 같은 기능들을 제공한다.
Windows용 Docker Desktop을 설치한다.
이미 회사에서 사용하기 위해 이전에 설치했었는데 자동으로 뭔가 잡혀있어서 설정이 잘 되어있는지 확인해보려 한다.
Docker Desktop 설치 후 설정화면에서 다음을 확인한다.
Settings => General => Use the WSL 2 based engine 활성화
Settings => Resources => Enable integration with my default WSL distro 활성화
Settings => Resources => Enable integration with additional destros => 설치한 Linux 배포판 (Ubuntu) 활성화
Apply&restart
를 눌러 변경사항을 저장한다.
이제 윈도우 터미널에서 wsl -l -v
명령어로 목록을 확인하고 wsl -d <배포판 이름>
명령어를 사용하면 해당 배포판으로 터미널을 열어서 사용할 수 있다.