Docker Container,  Windows

Windows, Docker – 설치 에러 해결 (wsl 2 installation is incomplete) + Vmmem 메모리 과점유 문제 해결

Windows 10 에서 Docker 설치시 아래와 같은 에러를 발견하셨다면 WSL2(Linux용 Windows 하위 시스템) 설치를 위한 작업이 필요합니다.

에러 화면

작업 내용 및 결과

  • CMD 창을 관리자 모드로 접속하여 아래 명령어를 입력해줍니다
# Linux용 Windows 하위 시스템 사용
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

# Virtual Machine 기능 사용
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

WSL2 Linux kernel update package for x64 machines
# WSL 2를 기본 버전으로 설정
wsl --set-default-version 2

WSL 2 실행을 위한 요구 사항 확인

  • WSL 2로 업데이트하려면 Windows 10을 실행해야 합니다.
    • x64 시스템의 경우: 버전 1903 이상, 빌드 18362 이상
    • ARM64 시스템의 경우: 버전 2004 이상, 빌드 19041 이상
    • 18362보다 낮은 빌드는 WSL 2를 지원하지 않습니다.
      Windows Update Assistant를 사용하여 Windows 버전을 업데이트합니다.
  • 이제 팝업 창의 restart 버튼을 클릭해주면 완료! 😀
  • 추가) dism.exe이 뭐지? (궁금하다면 참고 자료의 링크 확인)
DISM (배포 이미지 서비스 및 관리)
  • WSL 경로
    • \wsl$
  • Vmmem 메모리 과점유 문제 해결
    • WSL로 Docker 사용시 메모리 자원이 터지는 현상을 본 적이 있거나 보시게 될 겁니다.
      이 때 해결 방법으로 WSL의 자원에 제한을 둬야하는데 C:\Users\username 경로에 .wslconfig 파일을 생성하여 PC 사양 내에서 할당하고 싶은 수준의 자원을 제한하면 됩니다.
[wsl2] 
memory=4GB 
swap=0 
localhostForwarding=true
대충 제한된 범위 내에서 자원을 사용하는걸 확인할 수 있습니다.

참고 자료

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.