ãã¯ãã«ã«ãã¬ãã¥ãŒããã®å€æŽç¹
ä»å¹Žåãã«ãWSL 2 ã䜿çšãã Windows ã§ã® Docker éçºã®å°æ¥ã«é¢ããããžã§ã³ã® ãã¯ãã«ã« ãã¬ãã¥ãŒããªãªãŒã¹ ããŸãããããŸããŸãªãã£ãã«ãä»ã㊠Windows Insider ããå€ãã®ãã£ãŒãããã¯ãåãåããäžè¬çãªãšã©ãŒ ã±ãŒã¹ãç §åããŸããã ãŸããèªåãã¡ã§ãã䜿çšããæéããããŠã¢ãŒããã¯ãã£ãè©äŸ¡ããŸããã
ãã®åæã«åºã¥ããŠãDocker Desktop ã® WSL2 çµ±åãããå ç¢ã§ä¿å®ããããæ¹æ³ã§åèšèšããHyper-V ããã¯ãšã³ãã§çŸåšäœ¿çšããŠãããã®ãšåçã®æ©èœã確ä¿ããŸããã
æ°æ©èœ
æ°ããããã¯ãšã³ãã¢ãŒããã¯ãã£ã®è©³çްãæãäžããåã«ãã©ã®ãããªæ°æ©èœãããããèŠãŠã¿ãŸãããã
- Kubernetes ã®ãµããŒã: WSL 2 ããã¯ãšã³ãã䜿çšãããšãã« Kubernetes ãæå¹ã«ã§ããããã«ãªããŸãã
- æŽæ°ãããããŒã¢ã³: WSL 2 ããã¯ãšã³ãã§ææ°ã®å®å®ãã Docker ããŒã¢ã³ãå®è¡ãããããã«ãªããŸãã
- VPN 察å¿ã®ãããã¯ãŒãã³ã°: WSL 2 ããã¯ãšã³ãã¯ãvpnkit ã䜿çšã㊠VPN 察å¿ã®ãããã¯ãŒã¯ ã¹ã¿ãã¯ã確ä¿ãããã®åéã§ã®åãçµã¿ã掻çšããŠããŸã
- ããã«ãWSL 2 ããã¯ãšã³ãã¯ãHyper-V ããã¯ãšã³ããšåçã®æ©èœã«ãªããŸããã HTTPãããã·èšå®ãä¿¡é Œã§ããCAåæãããŒãžã§ã³ããã¯ã®ãµããŒããæ°ããã³ã³ããUIã®ãµããŒã...
ãã®æ°ããããã¯ãšã³ãã¯ãDocker ãã¹ã¯ãããèšå®ã§æå¹ã«ã§ããŸãã

WSL 2 ãäžè¬å ¬éããããšããã®ãã§ã㯠ããã¯ã¹ããªãã«ãªããäºææ§ã®ãããã·ã³ã§ WSL 2 ããã¯ãšã³ããèªåçã«ãªã³ã«ãªããŸãã
æ°ããã¢ãŒããã¯ãã£ã®ç޹ä»
ãŠãŒã¶ãŒããã®ãã£ãŒãããã¯ãšå éšã§ç¹å®ããèŠä»¶ã«åºã¥ããŠãWSL çµ±åã¢ãŒããã¯ãã£ã§å€æŽããã 3 ã€ã®äž»èŠãªåŽé¢ããããŸãã
- åé¢ãããç°å¢ã§å®è¡ãã: WSL2 ã§å®è¡ãããŠããä»ã®ã¢ããªã±ãŒã·ã§ã³ããã®å¯äœçšãã§ããã ãåé¿ããããã«ãå¥ã®ãããã¯ãŒã¯/PID/ããŠã³ãåå空éã§å®è¡ããå¿ èŠããããŸã
- çŸåšã®ã³ãŒãããŒã¹ã掻çšããŠãç¬èªã® Hyper-V VM ã«æ¢ã«å®è£ ãããŠãããã¹ãŠã®æ©èœãåå®è£ ããªãããã«ããŸã
- ãŠãŒã¶ãŒãäœ¿ãæ £ããŠããæ¢åã®UIãšå®å šã«çµ±åããŸãã
Hyper-V ããã¯ãšã³ãã®ã¢ãŒããã¯ãã£

ãã®æ°ããã¢ãŒããã¯ãã£ãçè§£ããã«ã¯ãå°ãæ»ã£ãŠãHyper-V ããã¯ãšã³ãã®èšè𿹿³ãšãWindows ããã³ããšã³ããããã¯ãšã³ããšéä¿¡ããæ¹æ³ã確èªããå¿ èŠããããŸãã
æãéèŠãªããšã¯ãHyper-Vã§å®è¡ããLinuxVMã§ãã ãã®LinuxVMã¯å®å šã«LinuxKitã䜿çšããŠæ§ç¯ãããŠããããããã®äžã§å®è¡ããããã¹ãŠã®ãã®ãæ£ç¢ºã«å¶åŸ¡ããããšãéåžžã«ç°¡åã«ãªããŸãã Hyper-V ãš Mac VM ã®äž¡æ¹ã§äœ¿çšããã倿°ã® LinuxKit ã³ã³ããŒãã³ããäœæããŸãã: Docker ãš Kubernetes ã®ã©ã€ããµã€ã¯ã«ãå¶åŸ¡ãããµãŒãã¹ãé害çºçæã«èšºæãåéãããµãŒãã¹ããã°ãéçŽãããµãŒãã¹ãªã©ã ãããã®ãµãŒãã¹ã¯ãDocker ãã¹ã¯ãããã®ã€ã³ã¹ããŒã«ãã£ã¬ã¯ã㪠(docker-desktop.iso) ã® iso ãã¡ã€ã«ã«ããã±ãŒãžåãããŠããŸãã
ãã®ããŒã¹ãã£ã¹ããªãã¥ãŒã·ã§ã³ã®äžã«ãå®è¡æã«ããŒãžã§ã³ããã¯isoãšåŒã°ãã2çªç®ã®isoãããŠã³ãããŸãã ãã®ãã¡ã€ã«ã«ã¯ãDocker ãšã³ãžã³ãš Kubernetes ã®ããŒãžã§ã³ã«åºæã®ãã€ããªãšãããã€/ã¢ããã°ã¬ãŒã ã¹ã¯ãªãããå«ãŸããŠããŸãã ãšã³ã¿ãŒãã©ã€ãºãšãã£ã·ã§ã³ã§ã¯ããã®2çªç®ã®isoã¯å ¬éããããŒãžã§ã³ããã¯ã®äžéšã§ãããã³ãã¥ããã£ã§ã¯ãåäžã®ããŒãžã§ã³ããã¯ããµããŒããããŠããŸã(docker.isoãã¡ã€ã«ã¯dockerãã¹ã¯ãããã€ã³ã¹ããŒã«ãã©ã«ããŒã«ããããŸã)ã
VM ãèµ·åããåã«ãã³ã³ãã㌠ã€ã¡ãŒãžãšæ§æãããã³ Kubernetes ããŒã¿ ã¹ãã¢ãæ ŒçŽããããã® VHD ãã¢ã¿ããããŸãã
ãããã®ãµãŒãã¹ã Windows åŽããå°éå¯èœã«ããããã«ãå éšã§ Hyper-V ãœã±ããã䜿çšããŠãUnix ãœã±ããã Windows ååä»ããã€ããšããŠå ¬éãããããã·ãæ§ç¯ããŸããã
æ°ãã WSL 2 ããã¯ãšã³ããžã®å€ææ¹æ³
æ°ããWSLããã¯ãšã³ãã®èšèšã¯ããã«éåžžã«è¿ãã§ãããVMã§LinuxKitãã£ã¹ããªãã¥ãŒã·ã§ã³ãå®è¡ããªããšããéãããããŸãã...ã³ã³ããå ã

ããã«ããã2ã€ã®WSLãã£ã¹ããªãã¥ãŒã·ã§ã³ãäœæãããŸããÂ
- Docker-desktopãããŒãã¹ãã©ãããã£ã¹ããªãã¥ãŒã·ã§ã³ãšåŒã³ãŸã
- Docker-desktop-data (ããŒã¿ ã¹ã㢠ãã£ã¹ããªãã¥ãŒã·ã§ã³ãšåŒã³ãŸã)
倧ãŸãã«èŠããšãããŒãã¹ãã©ãã ãã£ã¹ããªãã¥ãŒã·ã§ã³ã¯åºæ¬çã« Hyper-V ã眮ãæããããŒã¿ ã¹ã㢠ãã£ã¹ããªãã¥ãŒã·ã§ã³ã¯ä»¥åã« VM ã«ã¢ã¿ãããã VHD ã眮ãæããŸãã
ããŒãã¹ãã©ãããã£ã¹ããªãã¥ãŒã·ã§ã³ã¯ãåè¿°ã®ã®ãšåã2ã€ã®isoãã¡ã€ã«ã«åºã¥ããŠç¬èªã®ã«ãŒããã¡ã€ã«ã·ã¹ãã ãæã€Linuxåå空éãäœæã(å®å šã«çå®ã§ã¯ãããŸããããååã«è¿ã)ãVHDã®ä»£ããã«ããŒã¿ã¹ãã¢ãã£ã¹ããªãã¥ãŒã·ã§ã³ãã³ã³ããã€ã¡ãŒãžãªã©ã®ãããã³ã°ã¹ãã¢ãšããŠäœ¿çšããŸã(WSL 2ã§ã¯ãçŸæç¹ã§ã¯è¿œå ã®VHDãã¢ã¿ããããããšã¯ã§ããŸããã ãã®ãããã¯ãã¹ãã£ã¹ããªãã¥ãŒã·ã§ã³ããŠã³ããæŽ»çšããŸã)ã æåã®isoãã¡ã€ã«ã¯å ã®ãã®ãããããã«å€æŽãããŠããŸã:Linuxã«ãŒãã«ãšWSL 2ã«ãã£ãŠããã«æäŸãããã·ã¹ãã ãµãŒãã¹ãåé€ããŸããã2çªç®ã®ãã®(ããŒãžã§ã³ããã¯iso)ã¯ãHyper-V(ããã³Macã§ã)ã§äœ¿çšãããã®ãšå³å¯ã«åãã§ãã ããŒãã¹ãã©ãããã£ã¹ããªãã¥ãŒã·ã§ã³ã¯ãLinuxkit ã³ã³ããããã¢ã¯ã»ã¹ã§ããå Žæã« Windows 9p å ±æãããŠã³ããããããªããšã管çã (ã³ã³ãããš Windows ãã¡ã€ã«ãå ±æããããã« Samba ã䜿çšããªãããã«ãããã)ãLinuxkit ã³ã³ããã®ã©ã€ããµã€ã¯ã«ãå¶åŸ¡ããŸã (ã¯ãªãŒã³ã·ã£ããããŠã³ã®ç¢ºä¿ãªã©)ã
ãã®ããã«ããŠãDocker 㯠Hyper-V ããã³ MacOS VM ãšéåžžã«ãã䌌ãå å«ç°å¢ã§å®è¡ãããŸãã Linuxkitã³ã³ããŒãã³ãã§å®éã«åãã³ãŒãããŒã¹ãå ±æããã»ã©è¿ããããåãããŒãžã§ã³ããã¯isosãšåãWindowsåŽã®ã³ãŒãããŒã¹ã䜿çšããŠãHyper-Vããã¯ãšã³ããšã®æ©èœããªãã£ãéåžžã«è¿ éã«éæããŸããã
ããããããã倧ããªéãã¯ãHyper-V VMããã15åéãèµ·åããWSL 2ã®åçãªãœãŒã¹å²ãåœãŠã®ãããã§ããã·ã³ã®ãã¹ãŠã®ãªãœãŒã¹ã«ã¢ã¯ã»ã¹ããæ¬åœã«å¿ èŠãªã ãæ¶è²»ã§ããããšã§ãã ããã«ããã以å㯠2 GB ã® Hyper-V VM ãåãã£ãŠå²ãåœãŠãããšãå°é£ã ã£ãäœã¡ã¢ãªç°å¢ã§å®è¡ã§ããããã«ãªããŸãã
é·æçã«ã¯ãHyper-Vãå©çšã§ããªããWSL 2(ç¹ã«Windows Homeãšãã£ã·ã§ã³)ãå©çšã§ããWindowsããŒãžã§ã³ããµããŒãããããã®æãéãããŸãã
Linux ã¯ãŒã¯ã¹ããŒã¹ã®ãµããŒã
ãã¯ãã«ã«ãã¬ãã¥ãŒã¢ãŒããã¯ãã£ã«ãããLinux Workspacesã¯éåžžã«ç°¡åã«å®è£ ã§ããŸãã:ããŒã¢ã³ã¯ç¬èªã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ã§å®è¡ãããããããã¡ã€ã«ã·ã¹ãã ã«çŽæ¥ã¢ã¯ã»ã¹ã§ããŸããã ããŒã¢ã³ã®å ¬éã¯ããã€ã³ãããŠã³ããšåæ§ã«ç®±ããåºããŠããã«æ©èœããŸããã
æ°ããã¢ãŒããã¯ãã£ã§ã¯ãç©äºã¯å°ãããªãããŒã§ã:ç§ãã¡ã¯å¥ã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ãåé¢ãããåå空éå ã§å®è¡ãããŸãããã©ãããã°åãã¬ãã«ã®ããã©ãŒãã³ã¹ãéæã§ããŸãã?
WSL 2 ã¯ãåãã«ãŒãã«ãå ±æããŠãåããŠãŒãã£ãªã㣠VM å ã®ãã¹ãŠã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ãå®è¡ããŸãã æè¿ãMicrosoft ã¯ã¯ãã¹ãã£ã¹ããªãã¥ãŒã·ã§ã³ ãã€ã³ãã£ã³ã°ãå°å ¥ããç¹å®ã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ã® VHD ã«å¥ã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ããã¢ã¯ã»ã¹ã§ããããã«ãªããŸããã ããã䜿çšãããšãå®éã«ããŒã¢ã³ããŠãŒã¶ãŒãã£ã¹ããªãã¥ãŒã·ã§ã³ã«å ¬éã§ãããã€ãã£ãLinuxããã©ãŒãã³ã¹ãåããå°ã蟌ãç°å¢å ãããŠãŒã¶ãŒãã£ã¹ããªãã¥ãŒã·ã§ã³ãã¡ã€ã«ã«ã¢ã¯ã»ã¹ã§ããŸãã
ãã€ã³ãããŠã³ããã·ãŒã ã¬ã¹ãªãšã¯ã¹ããªãšã³ã¹ã«ããããã«ããŠãŒã¶ãŒãã£ã¹ããªãã¥ãŒã·ã§ã³ããã®çžå¯Ÿãã¹ãLinuxKitã³ã³ããããã¢ã¯ã»ã¹ã§ããåããã¡ã€ã«ãžã®ãã¹ã«å€æãããWindowsãã¡ã€ã«ã®ãã€ã³ãããŠã³ããæå¹ã«ããããã«äœ¿çšãããã®ãšåæ§ã®DockerAPIãããã·ãå°å ¥ããŸããã
åæã®å¶é
Linux ã¯ãŒã¯ã¹ããŒã¹ã®ãšã¯ã¹ããªãšã³ã¹ã®ãã©ãã·ã¥ã¢ããã«ã¯ãŸã åãçµãã§ããŸãã æåã«ã次ã®å¶éã«å¯ŸåŠããå¿ èŠããããŸãã
- ãã£ã¹ããªãã¥ãŒã·ã§ã³VHDã«ãã£ãŠããã¯ã¢ããããããã¡ã€ã«ã®ã¿ãããŠã³ãã§ããŸã(ã€ãŸãã/ tmpã/ mntã/ var / runã/ procã/ sysãªã©å ã®ããŠã³ãããã€ã³ãããããšã¯ã§ããŸãã)ã ã»ãšãã©ã®äººã«ãšã£ãŠãããã¯åé¡ã§ã¯ãªãã¯ãã§ããã/ var / run / docker.sockã®ãããªãã®ãã³ã³ããã«ããŠã³ãããããšã¯ãæåã¯æ©èœããŸããã ç§ãã¡ã¯ãã®åé¡ã解決ããããã«ãã€ã¯ããœãããšååããŠããŸããå°æ¥ã®Windows Updateã¯å®å šãªãã€ã³ãããŠã³ããµããŒããããããã§ãããã
- ã¯ã©ã€ã¢ã³ã ãã€ããªã¯ãŸã æäŸããŠããŸããã ãã£ã¹ããªãã¥ãŒã·ã§ã³ã«aptãyumããŸãã¯ãã®ä»ã®ããã±ãŒãžãããŒãžã£ãŒã䜿çšããŠãdockercliãšãã©ã°ã€ã³ãã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã ããã¯ä»åŸã®ã¢ããããŒãã§èªååãããŸãã
ãªããããããã®ã§ãã?
ãã¯ãã«ã«ãã¬ãã¥ãŒããªãªãŒã¹ãããšããç§ãã¡ãæãã§ããã®ã¯ãWindowsã§ã®Linuxã³ã³ããéçºã®å°æ¥ã«ã€ããŠã®ããžã§ã³ã衚ããå®éã®ãŠãŒã¶ãŒã®æã«æž¡ãããšã§ããã ã¡ã€ã³ã®Dockerãã¹ã¯ããããããžã§ã¯ããé€ããŠãå®éšã§ãããã®ãæ§ç¯ããããã«éåžžã«è¿ éã«äœæ¥ããå€ãã®ãŠãŒã¶ãŒãã£ãŒãããã¯ãåéããŸãã(ã¡ãªã¿ã«ãWindows Insiderã«æè¬ããŸããããã¯å€§ãã«åœ¹ç«ã¡ãŸãã!
ãŸããã¡ã³ããã³ã¹ã³ã¹ããåé¡èšºæãå®å®æ§ãæŽæ°åŠçãä»ã®ããã¯ãšã³ããšã®ã³ãŒãå ±æãªã©ã®é·æçãªæžå¿µã®èгç¹ãããæè¡ãã¬ãã¥ãŒã¢ãŒããã¯ãã£ã«ãææŠããŸããã
ãã®åŸããã¯ã€ãããŒãã«æ»ããããã€ãã®æœåšçãªä»£æ¿ã¢ãŒããã¯ãã£ãèšèšããæå°éã®åŽåã§ãWSL 2 å ã®ã³ã³ãããŒã§ LinuxKit VM ãéåžžã«å°ããªå€æŽã§å®è¡ã§ããããšãããããŸããããã®ã¢ãããŒãã«ãããåé¡ã®èšºæãæŽæ°ã®åŠçãããŒãžã§ã³ããã¯ã®ãµããŒãã®ç¢ºä¿ãä»ã®ããã¯ãšã³ããšã®æ©èœã®åçæ§ãªã©ã«ã€ããŠãçŸåšãšãŸã£ããåãã¡ã«ããºã ãéåžžã«ç°¡åã«å®è£ ã§ããŸãã
ç§ãã¡ã¯ãããã¿ã€ãã³ã°æ®µéã«é²ã¿ãæåããããšã蚌æããããããDockerãã¹ã¯ãããã³ãŒãããŒã¹ã«çŽæ¥çµ±åããŸããã
ãã®æ±ºå®ãæšé²ããäž»ãªåé¡
ãŠãŒã¶ãŒã¯ Kubernetes ã®ãµããŒããæ±ããŠããŸã
ãã倧ããªç¯å²ã§ã¯ãHyper-V ããã¯ãšã³ããšåçã®æ©èœãå¿ èŠã§ãã ããã«ã¯ããã¡ããKubernetesã®ãµããŒããå«ãŸããŸãããæ¬¡ã®ãããªå€ãã®é ãããæ©èœãå«ãŸããŸãã
- ãšã³ã¿ãŒãã©ã€ãºã§ã®ããŒãžã§ã³ããã¯ã®ãµããŒã
- ä¿¡é Œããã CA ã®åæ
- VPNãã¬ã³ããªãŒãªãããã¯ãŒãã³ã°
- HTTP ãããã·ã®ãµããŒã
ç§ãã¡ã®æ°ããã¢ãŒããã¯ãã£ã¯ãããããã¹ãŠã解決ããŸãã
ããã«ãŒäœæã¯ WSL 2 ãšã³ãžã³ãšéä¿¡ã§ããŸãã
ãã¯ãã«ã«ãã¬ãã¥ãŒã«å梱ãããŠããdocker-composeã®ããŒãžã§ã³ã¯ãããã«ãŒã³ã³ããã¹ããèªèããŠããŸããã§ããã docker-composeã®ä¿®æ£ã«åãçµãã§ããŸãããæ°ããã¢ãŒããã¯ãã£ã«ãããdockerã³ã³ããã¹ãããŸã ãµããŒãããŠããªãã¯ã©ã€ã¢ã³ãããŒã«(å€ãããŒãžã§ã³ã®docker-composeãå«ã)ãç°¡åã«æäœã§ããŸãã
ã³ã³ãããããã¯ãŒã¯ãæ©èœããªãå ŽåããããŸã
ãã®çç±ã¯ããã€ãç¹å®ããŸãããããããã¯ãã¹ãŠå ã®èšèšã®æ¬ é¥ã«é¢é£ããŠããŸã:æè¡ãã¬ãã¥ãŒã¯ç¬èªã®ãã£ã¹ããªãã¥ãŒã·ã§ã³å ã§å®è¡ãããŸãã ãã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ã¯ããããã¯ãŒã¯ã€ã³ã¿ãŒãã§ã€ã¹ãiptablesãªã©ãæ±ãå¯èœæ§ã®ããä»ã®ã¢ããªã±ãŒã·ã§ã³ãå®è¡ããŠããå¯èœæ§ããããŸãã ããã¯å®å šã«ç§ãã¡ã®ã³ã³ãããŒã«ã®å€ã«ãã察ç«ãåŒãèµ·ããå¯èœæ§ããããŸãã
ããã«æªãããšã«ããã¹ãŠã®WSL2ãã£ã¹ããªãã¥ãŒã·ã§ã³ã¯åããããã¯ãŒã¯åå空éã§å®è¡ãããŸã...2ã€ã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ã§åæã«Dockerãå®è¡ããããšããããã«åé¡ãçºçããäžéšã®ãŠãŒã¶ãŒããã®å ±åããããŸããã åœç¶ã®ããšãªããã2ã€ã®DockerããŒã¢ã³ã¯ãç«¶åããiptablesã«ãŒã«ãäœæããããšã§äºãã«æ®ºãåããŸããã
ç§ãã¡ã®æ°ããã¢ãŒããã¯ãã£ã¯ããã¯ããã®åé¡ã®å¯Ÿè±¡ã§ã¯ãããŸããã
蚺æã¯æªå€¢ã§ã
ç§ãã¡ãå¶åŸ¡ããŠããªããã£ã¹ããªãã¥ãŒã·ã§ã³å ã§å®è¡ãããšãåé¡èšºæã®é¢ã§å€§ããªèª²é¡ãçºçããŸãã ç¹ã« Kubernetes ã®ãµããŒãã远å ããå Žåã
ãŠãŒã¶ãŒããã¹ãŠãå£ãæ¹æ³ã¯å€ãããŠãç§ãã¡ãå¶åŸ¡ããŠããªãã·ã¹ãã ã§æ©å¯æ§ã®äœãããŒã¿ã®ã¿ãåéãã蚺æã·ã¹ãã ãäœæããããšã¯éåžžã«å°é£ã§ãã åé¢ãããã³ã³ãããŒå ã§å®è¡ãããšããã®åé¡ã解決ãããHyper-V ããã³ Mac ããã¯ãšã³ãã§æ¢ã«äœ¿çšããŠããã®ãšåã蚺æãµãŒãã¹ã掻çšã§ããŸãã
è€æ°ã®ããã¹ãã£ã³ã°ãã£ã¹ããªãã¥ãŒã·ã§ã³ãããµããŒãããããšã¯å°é£ã§ã
ãã¹ãŠã®ãŠãŒã¶ãŒãUbuntuã§å®è¡ãããããã§ã¯ãããŸããããç§ãã¡ã¯ãããèªèããŠããã圌ãã«éžæè¢ãäžããããšèããŠããŸãã ãã ããçµ±åããã±ãŒãžã®ã€ã³ã¹ããŒã«ãæ¬åœã«ãæ®éçãªãæ¹æ³ã§èªååããããšã¯éåžžã«å°é£ã§ãã ã³ã³ãããŒå ã®ç¬èªã®WSLãã£ã¹ããªãã¥ãŒã·ã§ã³ã§å®è¡ããããšã§ããã®åé¡ã¯çºçããªããªããã¯ãã¹ãã£ã¹ããªãã¥ãŒã·ã§ã³ãã€ã³ãããŠã³ãã®ãããã§åããã¡ã€ã«ã·ã¹ãã ã®ããã©ãŒãã³ã¹ãç¶æãããŸãã
çµ±åããã±ãŒãžã®ã¡ã³ããã³ã¹ã³ã¹ããéåžžã«é«ã
Hyper-Vããã³Macããã¯ãšã³ãã®ã¢ãŒããã¯ãã£ã«ãããå€ãã®ã³ãŒããç°¡åã«å ±æã§ããŸãã Mac ãš Windows ã® VM ã¯ã»ãŒåãã§ãããWSL 2 ã§ããã®åªããçç£æ§ã®äŸ¡å€ãç¶æããããšèããŠããŸãã çµ±åããã±ãŒãžã䜿çšããŠãã¹ãŠã®æ©èœãæ°ããæ¹æ³ã§å®è£ ããã³ã¹ããé«ãããŸããã
ç§ãã¡ã®æ°ããã¢ãããŒãã«ãããLinuxã³ãŒãããŒã¹ã®å€§éšåãMacãHyper-VãWSL 2ããã¯ãšã³ãéã§å ±æã§ããŸãã
ã¢ããã°ã¬ãŒãã®åŠçã¯éåžžã«å°é£ã§ã
Dockerãã¹ã¯ãããã§ã®ã¢ããã°ã¬ãŒãã®åŠçã«è±å¯ãªçµéšããããŸãã ããã¯é£ããã§ãããããŠç§ãã¡ã¯ãã®ä»äºãè€è£œããããããŸããã
æ°ããã¢ãŒããã¯ãã£ã¯ãHyper-V ããã³ Mac ããã¯ãšã³ãã«çšæãããŠããããžãã¯ãšãŸã£ããåãããžãã¯ãå ±æããŠããŸãã
Docker Desktop ã®æªæ¥
ãã€ã¯ããœããã WSL 2 ãäžè¬å ¬éãããããµããŒããããŠãããã¹ãŠã® Windows ããŒãžã§ã³ã§ WSL 2 ãšã³ãžã³ãæ¢å®ã§æå¹ã«ããäºå®ã§ãã ãã€ã¯ããœãããWSL 2ã®ãªãWindowsããŒãžã§ã³ã®ãµããŒãã忢ãããŸã§ãHyper-Vããã¯ãšã³ãã¯åŒãç¶ããµããŒããããŸããããã©ãŒã«ããã¯ã¡ã«ããºã ãšããŠã®ã¿ã§ãã
ãã®ãWSL 2ãã¡ãŒã¹ããã®ã¢ãããŒãã«ç§»è¡ããããšã§ããã®ãŠããŒã¯ãªç¹æ§ã掻çšããŠãå°æ¥çã«æ°æ©èœã®ããã¯ãè§£é€ããããšèããŠããŸãã ããšãã°ãWSL 2 㯠Windows 10 Home ã§ãµããŒããããŠããŸãã ãããå©çšããŠãå°æ¥çã«æ°ãããŠãŒã¶ãŒã«ãªãŒãããããšèããŠããŸã(ãŸã çºè¡šãããã®ã¯ãããŸããããééããªãããã¯ãã°ã«ãããŸã)ã
ãã®æ°ããããã¯ãšã³ãã¯ããšããµã€ãã£ã³ã°ãªæ°æ©èœãžã®éãéããã®ã§ãããçæ§ããã®ãã£ãŒãããã¯ããåŸ ã¡ããŠãããŸãã
æ°ãã WSL 2 ã¢ãŒããã¯ãã£ã¯ã次㮠Docker ãã¹ã¯ããã ãšããž ãªãªãŒã¹ã®äžéšãšããŠãªãªãŒã¹ãããäºå®ã§ãã æ¢ã« WSL 2 ã䜿çšããŠãã Windows ãŠãŒã¶ãŒåã ä»ãããšããžãããŠã³ããŒã ä»åŸæ°é±éã§ææ°ã®Dockerã¢ãŒããã¯ãã£ã«ã¢ã¯ã»ã¹ã§ããããã«ããŸãã