WSL(Windows Subsystem for Linux)은 Windows에서 리눅스 환경을 실행할 수 있도록 해주는 기능이다. WSL을 사용하면 가상 머신(VM)이나 듀얼 부팅 없이도 Windows에서 직접 리눅스 명령어와 애플리케이션을 실행할 수 있다. 프로비저닝 과정에서 애플리케이션의 기능 테스트를 WSL에서 진행한 후 쿠버네티스 배포를 진행하는 것이 효율적이다.
| WSL 1 | WSL 2 | |
|---|---|---|
| 커널 | Windows 시스템 호출 변환 | 리눅스 커널 사용 (가상화) |
| 속도 | 파일 시스템 속도 빠름 | CPU, I/O 성능 우수 |
| 파일 시스템 | Windows 파일 시스템 직접 사용 | 가상 디스크(VHD) 사용 |
| Docker 지원 | 제한적 지원 | 완전한 Docker 지원 |
| 네트워크 | Windows와 동일 | 리눅스 네트워크 스택 사용 |
Docker Desktop은 기본적으로 WSL 2 기반에서 실행되므로 WSL2를 사용한다.리눅스 네트워크, 보안 기능, 컨테이너 관리,빌드 속도 & 대용량 파일 처리 성능 등 거의 모든 면에서 WSL2가 우세하다. WSL1이 실행 속도, 부팅 속도면에서 유리하므로 빠른 실행이 필요할 경우에 한해 사용 하면 된다.
wsl --set-version <배포판명> 1
wsl --set-version <배포판명> 2
PowerShell 관리자 권한으로 실행
wsl --set-default docker-desktop
wsl --set-default Ubuntu
wsl
PS C:\WINDOWS\system32> wsl --list --verbose
NAME STATE VERSION
* docker-desktop Running 2
Ubuntu Stopped 1
Ubuntu-20.04 Stopped 2
wsl --set-version Ubuntu 2
wsl --export Ubuntu ubuntu_backup.tar
wsl --unregister Ubuntu
wsl --import Ubuntu C:\WSL ubuntu_backup.tar --version 2
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo systemctl status docker
sudo docker run hello-world