安裝VMware16兼容Hyper-v+WSL2+Docker+解決0x80370102報錯


VMware 20H1(預覽版)已經支持運行同時兼容Windows10的Hyper-v虛擬化。這里可以同時運行 VMware Workstation Pro Tech Preview 20H1 (16的預覽版)+WSL2+Hyper-v虛擬機+Docker Desktop+VirtualBox6。同時呢,WSL2開啟后也可以像普通Linux中安裝和使用docker非常方便。
原文在我的開源中國:https://my.oschina.net/finchxu/blog/3195991

VMware blog原文介紹並提供了下載這個預覽版的鏈接: https://blogs.vmware.com/workstation/2020/01/vmware-workstation-tech-preview-20h1.html

官方 VMware Workstation Pro Tech Preview 20H1 下載鏈接: https://download3.vmware.com/software/wkst/file/VMware-workstation-full-e.x.p-15679048.exe

A:這里說一下環境吧(以下條件均為必須):

  • Windows10(如下圖版本號2004,要求操作系統版本最低必須為19041)(自行查看,如果不是可以 加入預覽體驗計划 的 慢速通道 )
  • 下載好的 VMware Workstation Pro Tech Preview 20H1 版本(默認提供試用229天)
  • Windows10在BIOS中開啟VT虛擬化
  • Intel Haswell or newer CPU 或者 AMD Bulldozer or newer CPU

B:首先安裝WSL1(后續用命令轉換為WSL2)

按照微軟官方文檔安裝WSL1即可 https://docs.microsoft.com/zh-cn/windows/wsl/install-win10

安裝好后進行WSL1的初始化: https://docs.microsoft.com/zh-cn/windows/wsl/initialize-distro

這里說明以下為什么先安裝WSL1再轉換成WSL2啊,為什么不直接設置成 wsl --set-default-version 2 默認安裝WSL2呢?

答案是會遇到報錯: WslRegisterDistribution failed with error: 0x80370102 這個錯誤查了很多文檔都解決不了,可是先安裝WSL1再轉換2就不會遇到這個報錯。

#這里用管理員身份打開PowerShell
PS C:\Users\enen> wsl -l -v
  NAME                   STATE           VERSION
* Ubuntu-18.04           Running         1
PS C:\Users\enen> bcdedit /set hypervisorlaunchtype auto



C:安裝VMware20H1。這里就正常安裝就好了,沒什么特別的。創建啟動一個虛擬機發現正常。(以前是會提示不兼容Hyper-v的)

D:WSL1轉換為WSL2

參考微軟的文檔 https://docs.microsoft.com/zh-cn/windows/wsl/wsl2-install 如下:

#用管理員模式啟動PowerShell然后運行
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
這兩個安裝完成直接 重啟 !!!!!!!!!重啟!!!!!!
#這里的<Distro>就是你安裝的WSL1的名稱
wsl --set-version <Distro> 2
wsl -l -v
#這時候會提示version為2

這時候VMware的虛擬機可以正常使用,WSL2也可以正常使用。

E:安裝其他的。

記得修改WSL2中的Linux發行版的源為國內源,提高下載更新速度。

這時候WSL2中的docker可以正常使用,桌面版自己的docker也可以使用了。兩個docker集中管理。

桌面版和WSL2內Linux的docker協同使用

  • 安裝vs code並使用插件連接WSL2。這里可以把你本地的開發環境直接遷移到WSL2的Ubuntu18中,是不是很方便。

(1)安裝 vs code https://code.visualstudio.com/

(2)安裝插件:在vs code的商店里搜索 remote_development 安裝即可。

(3)在程序左下角會顯示插件入口。點擊使用。

vscode插件使用

vs code使用WSL2

  • 其他的使用情況,,隨便。

其他參考:

https://www.right.com.cn/forum/thread-2036466-2-1.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM