이상을 꿈꾸는 몽상가.. 프로그래밍을 좋아함..


Windows WSL2를 이용한 Ubuntu, Docker, Kubernetes 환경구성

wsl teminal
( 이미지 출처 : https://docs.microsoft.com )

Windows 환경에서 Ubuntu를 사용하기 위한 WSL 세팅 후 필요한 개인적인 환경설정 작업들을 기술 합니다.

WSL2, Ubuntu, Docker, Kubernetes 설치 작업은 글의 가장 하단에 작성되어있습니다.

파일탐색기에서 WSL 디렉토리 접근하기

\wsl$를 파일탐색기 주소창에 넣으면 구성되어있는 여러개의 WSL 이 보여집니다.

WSL에서 윈도우 프로그램 실행하기

WSL terminal에서 파일탐색기 열기

.exe 까지 기술해주면 Windows 환경변수 설정이 된 툴들은 WSL terminal에서도 실행 가능합니다.
예를들어, 아래와 같이 explorer.exe 명령어로 WSL terminal에서 현 디렉토리(/home/dveamer)를 파일탐색기로 접근할 수 있습니다.

$ pwd
/home/dveamer
$ explorer.exe .

WSL terminal에서 응용프로그램 열기

Windows가 기본적으로 제공해주는 툴이 아닌 다른 응용프로그램 들은 응용프로그램의 경로까지 지정해줘야 합니다.

아래 명령어로 firefox 브라우저로 google.com에 접근할 수 있습니다.

$ /mnt/c/Program Files/Mozilla Firefox/firefox.exe google.com

경로까지 지정하려면 사실상 사용이 어렵습니다. Windows 혹은 Ubuntu 환경변수 설정을 하시거나 alias 설정을 함께 사용하셔야 합니다.
근데 alias를 이용하는 방법이 .exe 타이핑도 생략할 수 있기 때문에 더 낫다고 생각합니다.

Alias를 설정

Alias 설정을 이용해서 편하게 사용하세요.

  • bash 사용시 : ~/.bashrc 파일
  • zsh 사용시 : ~/.zshrc 파일
# alias
alias notepp='"/mnt/c/Program Files (x86)/Notepad++/notepad++.exe"'
alias explorer='explorer.exe'
alias firefox='"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"'

그 외

설치

WSL2 설치

Windows 업데이트

특정 버전 이후 WSL2가 사용가능하므로 먼저 Windows 업데이트를 진행해야 합니다.

BIOS 가상화 관련 CMOS 설정 확인

CMOS 설정에서 BIOS 가상화를 사용하겠다는 CPU 설정을 해주셔야 합니다.
보통 Advanced 메뉴 혹은 CPU Configuration 메뉴에 위치합니다.

  • ARM : CPU Configuration 에서 SVM Mode을 enable 로 수정
  • Intel : 인텔 가상화 기술 / Intel(VMX) Vitualization Technology를 enable로 수정

WSL & Docker 설치

WSL2 설치 및 사용 방법 - 44bits 페이지에서 WSL2, Ubuntu 그리고 Docker를 설치하고 사용하는 방법을 알려주고 있습니다.
Docker 공식 홈페이지의 Docker Desktop WSL 2 backend 가이드 페이지에서도 Docker 설치 방법을 가이드하고 있습니다.

Docker 메모리 제한

microsoft wsl-config 가이드 페이지에서 보면 WSL 메모리 기본설정이 8GB 또는 물리적인 메모리의 50%까지 사용하도록 되어있다고 합니다.
C:\Users<UserName>.wslconfig 파일을 만들어서 아래와 같이 입력하시면 메모리를 제한 할 수 있습니다. 필요하신 숫자를 입력하시면 됩니다.

[wsl2]
# Limits VM memory to use no more than 4 GB, this can be set as whole numbers using GB or MB
memory=4GB

# Sets amount of swap storage space to 8GB, default is 25% of available RAM
swap=0GB

그리고 Setting > General 에서 Start Docker Desktop when you log in 을 체크해서 평소에는 Docker Desktop을 꺼놓도록 처리하시기 바랍니다.

WSL & Kubernetes

Docker Desktop > Setting > Kubernetes 에서 Enable Kubernetes를 체크 후 Apply & Restart 버튼을 누르면 됩니다.

kbue-enable 이미지 출처 : Deploy on Kubernetes - https://docs.docker.com

그 뒤 WSL terminal에서 kubectl get nodes 명령어를 쳐보시면 kubernetes를 사용할 수 있게 된 것을 확인하실 수 있습니다.


Associated Posts

관련된 주제를 살펴볼 수 있도록 동일한 Tag를 가진 글들을 모아뒀습니다. 제목을 눌러주세요.

i