Windows 10 Home の WSL2 + Docker を検証するための環境を考えた時、Windows 10 Pro の Hyper-V にいれるのが手っ取り早いのですが、CPU仮想化支援の有効化コマンドレットに気づかず Windows Server 2019 上の Windows 10 Home じゃないとダメだっけと思ってさまよった時のメモ。
結果は VMのCPU仮想化支援を有効にすればどちらも変わらず動作する。
前の記事の前段となる個人的なメモです。ローカル環境が Windows 10 Home の人が環境を汚さずやるにはいいのでは。
目次
[:contens]
TL;DR
- Windows 10 Home を Nested Hyper-V で動かす
- Windows 10 Home on Hyper-V と変わらなず wsl2 + Docker Edge は動作する (Hyper-V の Windows 10 Home VMのの CPU 仮想化支援を有効にしよう)
- Insiderビルドが長すぎるのでWindows 2004、あらためWindows 10 May 2020 Update はよ、ふたたび
前提
- Dv3 or Ev3 が必要
Azure Virtual Machines で入れ子になった仮想化を有効にする方法 | Microsoft Docs
VMの構成
久々に terraform を使わず Azure Portal を確認してみます。 いつの間にか スポットインスタンスができるようになってて感動した。
適当に Resource Group を作っておきます。
- Windows Server Gen2 Preview のイメージで Windows Server 2019 とする
- Spot Instance
- D4s_v3
- Standard SSD
全部できるとリソースこんな感じ。
Nested Hyper-V の準備
Install-WindowsFeature -Name Hyper-V -IncludeManagementTools -Restart
再起動後に VM Swtich の構成
New-VMSwitch -Name "InternalNAT" -SwitchType Internal $ifIndex = (Get-NetAdapter |where Name -match InternalNAT).ifIndex New-NetIPAddress -IPAddress 192.168.0.1 -PrefixLength 24 -InterfaceIndex $ifIndex
NAT Network の構成
New-NetNat -Name "InternalNat" -InternalIPInterfaceAddressPrefix 192.168.0.0/24
Hyper-V を開いてVMの構築。この時Network は Internal NAT を向ける
Windows 10 Home ISO を用意
MediaCreationTool1909 を入れる。IE がアレなので curl で落とす。
curl -L https://go.microsoft.com/fwlink/?LinkId=691209 -o MediaCreationTool1909.exe
ISO を設定
Boot Order を修正して ISO 起動できるようにする
あとは Windows 10 Home を入れる。
DHCP Server を Azure VM に用意
Azure VM 上の Nested Hyper-V ということは DHCP ないので、適当に Windows Server 2019 から DHCPを Internal NAT に配布します。
Install-WindowsFeature -Name DHCP -IncludeManagementTools
DHCP ツールを起動して、IPv4に新規スコープを追加し、 192.168.0.100-200/24 を設定
デフォルトゲートウェイに InternalNAT の 192.168,0.1 を指定
これで Hyper-V の VM を起動したり、ネットワークアダプターの無効/有効でIPが取得される。
残り
Windows 10 Home on Hyper-V (Windows 10 Pro) と同じ。
用が済んだら Resource Group ごとぐっぱい。Terraform 以外で作るの久々で相変わらずめんどくさかった。