WSL은 Windows Subsystem For Linux의 이니셜이며, 윈도우에서 리눅스 커널을 작동할 수 있게 하는 획기적인 기술이다. macOS에 상주하고 있는 개발자들을 끌어모으기 위해 악착같이 만들었지만 아직 초기이기 때문에 문제가 많이 발생한다.
여기서 다루는 문제는 WSL2부터 일어나는 문제이며, 도커를 실행시켰을 때 vmmem이라는 프로그램이 운영체제의 모든 잔여 램을 잡아먹는 이슈다. 램이 2기가든 32기가든 평등하게 모조리 잡아먹는 마틴 루터 킹같은 존재인 것이다.
이 문제는 다행히 github issue를 통해 해결된 상태이다.
https://github.com/microsoft/WSL/issues/4166
이곳을 들어가보면, apostolos라는 유저가 고맙게도 방법을 적어주었다. %UserProfile%\.wslconfig 파일을 만들어서 wsl 메모리 자체를 제한하면 된다.
[wsl2]
memory=2GB
swap=1GB
localhostForwarding=true
파일의 내부는 상단처럼 작성하면 된다.