WSL2와 Docker를 도입해 보자
WSL1에서 WSL2로 전환하여 WSL2에서 실행되는 Docker를 도입합니다.
배포 절차는 Microsoft의 다음 문서를 참조했습니다.
도입 환경
Boot Camp(인텔 CPU)의 Windows 10 Pro 20H2(10.0.19042)에서 이미 WSL1이 설치된 환경입니다.
Windows 버전
PS C:\> Get-CimInstance -Class Win32_OperatingSystem | Format-List Version
Version : 10.0.19042
WSL 버전
PS C:\> wsl -l -v
NAME STATE VERSION
* Ubuntu-20.04 Stopped 1
또한 Hyper-V는 비활성화된 상태입니다.
(WSL2에서 Docker를 실행하기 위해 비활성화 상태에서 OK)
Hyper-V 상태는 "제어판\모든 제어판 항목\프로그램 및 기능"의 "Windows 기능 활성화 또는 비활성화"에서 확인하거나 PowerShell을 관리자 권한으로 실행하여 "Get- WindowsOptionalFeature 명령으로 확인.
Run the PowerShell 7 as Administrator
Start-Process pwsh.exe -Verb runas
Hyper-V Status
PS C:\> Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V
FeatureName : Microsoft-Hyper-V
DisplayName : Hyper-V プラットフォーム
Description : 仮想マシンとそのリソースの作成および管理に使用できるサービスを提供します。
RestartRequired : Possible
State : Disabled
CustomProperties :
BIOS 내부 가상화 사용
Boot Camp로 부팅하면 BIOS 내부 가상화가 활성화되지 않을 수 있습니다.
이 설정은 작업 관리자의 성능 탭에 있는 가상화 열에서 확인할 수 있습니다.
처음에는 이 설정을 사용할 수 없으므로 다음 오류 메시지가 표시되어 WSL2를 사용할 수 없습니다.
Error: 0x80370102 ??????????????????????????????????????
컴퓨터의 BIOS 내부에서 가상화가 활성화되어 있는지 확인하십시오.
BIOS 내부 가상화를 활성화하려면 macOS로 재부팅한 후 시스템 환경설정에서 부팅 디스크를 선택하고 디스크를 BOOTCAMP Windows로 설정한 다음 Windows를 부팅합니다.
WSL2로 전환
WSL1에서 WSL2로 전환합니다.
WSL1이 이미 설치되었기 때문에 Windows용 Linux용 서브시스템 기능이 사용 가능하며 가상 머신 플랫폼 기능이 사용 불가능합니다.
가상 머신 기능을 활성화하려면 관리자 권한으로 PowerShell을 시작하고 다음 명령을 실행합니다.
활성화되면 PC를 다시 시작합니다.
Enable Feature VirtualMachinePlatform
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
재부팅 후 위의 참고 문서에 나열된 "Linux 커널 업데이트 패키지"을 다운로드하여 설치합니다.
설치가 완료되면 WSL2를 기본값으로 설정합니다.
Set WSL2 as default
wsl --set-version Ubuntu-20.04 2
설정이 완료되면 WSL2로 전환되었는지 확인합니다.
WSL 버전
PS C:\> wsl -l -v
NAME STATE VERSION
* Ubuntu-20.04 Running 2
Docker 소개
Docker 공식 사이트에서 Windows용 Docker Desktop 설치 프로그램을 다운로드합니다.
설치 프로그램을 실행하고 "Install required Windows components for WSL 2"필드에 체크가 되어 있는지 확인하고 OK 버튼을 누릅니다.
OK 버튼을 누르면 설치가 시작됩니다.
설치가 완료되면 "Close and Log out"버튼이 표시되고 누르면 로그아웃됩니다.
로그인하면 자동으로 WSL2를 백엔드로 Docker가 시작됩니다.
시작 후 표시된 튜토리얼을 실행했는데 문제없이 표시되었습니다.
docker run -d -p 80:80 docker/getting-started
이것으로 WSL2에서 실행되는 Docker 배포가 완료되었습니다.
Reference
이 문제에 관하여(WSL2와 Docker를 도입해 보자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/gnix/items/2eb9ef2130853f68c475텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)