
Window10에 Docker 설치를 하다 오류가 나기도 했고 해서 정상적으로 설치한 과정을 정리하게됨.
시작하기 전에, Docker Desktop은 Docker가 리눅스 기반으로 동작하기 때문에 Window , Mac 환경에서도 손쉽게 사용할 수 있게 나온 것이라고 한다.
🔍 설치하기 전에
설치가 잘 안되서 가장 먼저 찾아본 공식문서. (오늘도 공식문서의 중요성을 깨닫습니다..)
Install Docker Desktop on Windows
Get started with Docker for Windows. This guide covers system requirements, where to download, and instructions on how to install and update.
docs.docker.com
Docker는 Linux를 기반으로 동작하는 애플리케이션이기 때문에 Windows에서 돌리려면 가상환경의 필요함을 짐작할 수 있다. 이를 위해 Windows 에서는 Hyper-V 가 제공되고 있었고, Docker Desktop은 기본적으로 Hyper-V의 기능을 사용한다고 한다.
공식적으로는 Windows Home 에서는 Hyper-V를 사용할 수 없는데 2020년 5월, Hyper-V 기반의 WSL2가 Windows에 정식 릴리즈 되었고, Docker Desktop에서 이를 지원해 현재는 Home 버전에서도 손쉽게 Docker Desktop을 사용할 수 있다.
( 이 글은 Docker Desktop설치가 목적이므로 Hyper-V와 WSL2에 대해서는 다루지 않도록 하겠다.)
컴퓨터 Windows가 Home Edition 이므로 WSL2 를 설치하도록 하겠다.
✔ WSL2 설치
우선, WSL2 기능 활성화를 위한 작업이 필요하다.
1. PowerShell 관리자 모드로 실행.
2. 아래 명령어 입력 후 재부팅dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
에러가 난다면, 제어판의 'Windows 기능 켜기/끄기' 의 Linux용 Windows 하위 시스템 체크 후 재부팅
3. 다시 PowerShell 관리자 모드로 실행.
4. wsl --install 명령어 입력
$ wsl --install
or wsl --install --web-download
5. wsl버전 기본값을 2로 변경.
$ wsl --set-default-version 2
그런데 나의 경우는 4번에서 에러를 마주쳤다. 에러가 안났다면 아래 오류 부분은 스킵.
❗ WSL 설치 오류 : WslRegisterDistribution failed with error: 0x80370102
아래 링크를 통해 해결방법을 얻을 수 있었다.
WSL 2 Won't Run Ubuntu - Error 0x80370102
Today, I decided to upgrade from WSL 1 to WSL 2. On WSL 1, I had no issues getting both Kali Linux or Ubuntu to function on WSL 1. When upgrading to WSL 2, both Kali and Ubuntu failed to upgrade to
askubuntu.com
요약하자면, BIOS에서 CPU 가상화 설정 및 Hyper-V Windows 기능 활성화가 필요하다고 한다.
이 내용은 Docker의 공식문서에도 언급되어 있다. [링크]
재부팅을 최소화 하기 위해 Windows 기능 설정 먼저.
1. Windows 기능 켜기/끄기' 의 Windows 하이퍼바이저 플랫폼 체크 후 재부팅.
2. 재부팅 과정에서 BIOS진입. 부팅중에 F2를 연타하면 됨.
(메인보드 제조사별로 다른데 보통 F2, F10, DEL이라고 함)
여기서 Advance Mode(F7) 로 들어간 후, Advanced 탭 - CPU Configuration 클릭.
그리고 Intel (VTX) Virtualization Technology 를 Enabled로 변경. (AMD의 경우는 AMD (SVM) Secure Virtual Machine)
이후에는 에러 나기전에 PowerShell 관리자 모드에서 wsl 설치한 것을 재시도 하면 된다.
wsl 설치 확인 명령어는 'wsl -l -v'
✔ Docker Desktop
WSL2를 설치 했으니 이제 Docker Desktop을 설치해볼 차례.
아래 링크를 통해 Docker 홈페이지로 접속 후 Downlad for windows 버튼 클릭
.https://www.docker.com/get-started/
다운로드 된 .exe파일을 안내에 따라 설치를 하면 된다. 중간에 Configuration 이 나오는데, 둘다 체크 하면 된다.
설치 두번째인 지금보니, 저 recommended 문구가 눈에 들어온다. Docker팀에서도 범용성 있는 WSL2를 사용하라고 권장하는 것 같다.
설치가 완료되고 기본 설정을 한 후 실행하면 다음과 같은 화면이 나온다. (계정이 없다면 생성)
Terminal 에서 docker -v 명령어를 통해, 설치 확인을 할 수 있다.
추가로, WSL2 설정이 잘 되어있는지 확인 해보자.
1. 우측 상단 톱니바퀴 아이콘을 눌러 Settings 에 들어간다.
2. General 설정에서 'Use the WSL 2 based engine' 가 체크되어있는지 확인.
3. Resources 설정 - WSL integration 메뉴의 'Enable Integration with my default WSL distro' 체크되어 있는지 확인
새로 체크한 것이 있다면 Apply & restart 버튼 클릭.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!