Windows 10 啟用 WSL2 與 Docker Desktop 時遇到 HYPERV_NOT_INSTALLED

Docker Desktop 在 Windows 上執行 Linux 容器時需要 WSL2。

可以依序檢查以下項目:

  1. 點擊「Recover WSL distro」按鈕:可先依錯誤訊息嘗試恢復。
  2. 確保 WSL2 已正確安裝
    • 可以在 PowerShell 中以管理員身分執行 wsl --status 檢查 WSL 狀態
    • 如果需要安裝 WSL2,可執行 wsl --install
  3. 確認 Windows 功能已啟用
    • 控制台 > 程式和功能 > 開啟或關閉 Windows 功能
    • 確保「Windows Subsystem for Linux」和「虛擬機器平台」已勾選
  4. 更新 WSL2
    • 下載並安裝最新的 WSL2 Linux 核心更新包
  5. 重新啟動 Docker Desktop
    • 完全退出 Docker Desktop 後重新啟動
  6. 檢查系統需求
    • 確認 Windows 版本支援 WSL2(Windows 10 version 2004+ 或 Windows 11)。
    • 確認虛擬化在 BIOS 中已啟用

步驟 2:確認 BIOS 已啟用虛擬化

  1. 重新啟動電腦並在啟動時按特定按鍵進入 BIOS 設定 (通常是 F2、F10、Del 或 Esc,視您的電腦型號而定)
  2. 在 BIOS 中尋找虛擬化選項 (可能稱為 Intel VT-x、AMD-V、Virtualization Technology 或類似名稱)
  3. 確保該選項設為「啟用」或「開啟」
  4. 儲存設定並重新啟動

步驟 3:安裝或更新 WSL

完成上述設定後,再次以管理員身份打開 PowerShell,執行:

wsl --update


deploying WSL2 distributions ensuring main distro is deployed: deploying "docker-desktop": importing WSL distro "您目前的電腦設定不支援 WSL2。\r\n請啟用「虛擬機器平台」選擇性元件,並確保 BIOS 中已啟用虛擬化。\r\n啟用以下項目,以執行 [虛擬機器平台]: wsl.exe --install --no-distribution\r\n如需詳細資訊,請瀏覽 https://aka.ms/enablevirtualization\r\n錯誤碼: Wsl/Service/RegisterDistro/CreateVm/HCS/HCS_E_HYPERV_NOT_INSTALLED\r\n" output="docker-desktop": exit code: 4294967295: running WSL command wsl.exe C:\Windows\System32\wsl.exe --import docker-desktop <HOME>\AppData\Local\Docker\wsl\main C:\Program Files\Docker\Docker\resources\wsl\wsl-bootstrap.tar --version 2: 您目前的電腦設定不支援 WSL2。 請啟用「虛擬機器平台」選擇性元件,並確保 BIOS 中已啟用虛擬化。 啟用以下項目,以執行 [虛擬機器平台]: wsl.exe --install --no-distribution 如需詳細資訊,請瀏覽 https://aka.ms/enablevirtualization 錯誤碼: Wsl/Service/RegisterDistro/CreateVm/HCS/HCS_E_HYPERV_NOT_INSTALLED : exit status 0xffffffff checking if isocache exists: CreateFile \\wsl$\docker-desktop-data\isocache\: The network name cannot be found. 

重點錯誤:

HCS_E_HYPERV_NOT_INSTALLED

Hyper-V 子系統未正確載入到核心中,WSL2 無法建立 VM。

HCS 是什麼?

HCS(Host Compute Service)是 WSL 和 Docker 操作虛擬化容器時使用的核心服務。

可能原因

  1. Hyper-V 已啟用,但 核心驅動未載入(如 hypervisor 未啟動)
  2. bcdedit /set hypervisorlaunchtype auto 沒有設定過或未生效
  3. 作業系統是精簡版或曾用過修改器(如 Ghost Windows)
  4. 虛擬機器平台功能被防毒、BitLocker、VBS 或安全啟動干擾
  5. BIOS 虛擬化雖已開啟,但系統啟動時未載入 Hyper-V 子系統

可用以下步驟確認 Hyper-V 是否能啟用(在 PowerShell 執行):

1. 確認 Hyper-V 核心會自動啟動

bcdedit /set hypervisorlaunchtype auto

然後 重新啟動電腦


2. 確認 vmcompute 正常執行

Get-Service vmcompute

3. 關閉後重新啟動 WSL

wsl --shutdown

4. 手動安裝 Linux 發行版,確認能否建立 VM

wsl --install -d Ubuntu

如果連這個都會報 HCS_E_HYPERV_NOT_INSTALLED,那代表系統層級的 Hyper-V 仍有問題。


5. 使用 DISM 修復系統核心

DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow

執行 wsl --install -d Ubuntu 測試下載時,又出現以下錯誤:

接著出現另一個錯誤

wslconfig 中不明的按鍵 '23'

C:\Users\<使用者名稱>\.wslconfig

該檔案含有無效或格式錯誤的參數,WSL 因此無法解析,Docker 也無法正常執行。刪除檔案後即可恢復。

Author image
關於 Richard Zheng
About me 喜歡爬山,瑜伽,溜冰,喜歡新奇的事,最喜歡的還是寫程式帶來的成就感,對於資訊會不斷的出現新事物也能抱持好奇與熱忱。近期開始將學習的心得寫在Blog,發現思路更清晰也加深了記憶。 紙上得來終覺淺,絕知此事要躬行