![](/img/trans.png)
[英]Error Message for Hyper-V and Data Execution for Docker-Desktop on Windows 10 Failing to Start
[英]Unable to start Docker in Windows 10 - Hyper-V error is thrown
在 Windows 10 中啟動 docker 時出現以下錯誤。誰能指導我正確安裝 docker?
Unable to create: The running command stopped because the preference variable
"ErrorActionPreference" or common parameter is set to Stop: Hyper-V encountered
an error trying to access an object on computer 'XXXX' because the object was not
found. The object might have been deleted, or you might not have permission to
perform the task. Verify that the Virtual Machine Management service on the
computer is running. If the service is running, try to perform the task again by
using Run as Administrator.
at New-MobyLinuxVM, <No file>: line 242
at <ScriptBlock>, <No file>: line 362
at Docker.Backend.HyperV.RunScript(String action, Dictionary`2 parameters)
at Docker.Backend.ContainerEngine.Linux.Start(Settings settings)
at Docker.Core.Pipe.NamedPipeServer.<>c__DisplayClass8_0.<Register>b__0(Object[] parameters)
at Docker.Core.Pipe.NamedPipeServer.RunAction(String action, Object[] parameters)
版本
OS : Windows 10 Enterprise
Version : 1607
OS Build : 14393.576
Docker Version : 1.12.3 (Stable)
在管理員模式下從命令提示符運行“MOFCOMP %SYSTEMROOT%\\System32\\WindowsVirtualization.V2.mof”
。 執行此操作后也無需重新啟動機器,它對我有用。
我也遇到過同樣的問題。 我已經通過刪除所有 MobyLinuxVM 虛擬機解決了這個問題。 以下是它的步驟。
這些步驟在我的系統上解決了這個問題。
假設您正在嘗試運行 Windows 容器:
右鍵單擊 Docker 系統托盤圖標,然后選擇“切換到 Windows 容器”。
它最終會讓您重新啟動系統,但不會再嘗試運行錯誤消息中提到的 MobyLinuxVm。
如果它對任何人有幫助,我將使用通過 Parallels 運行 Windows 10 VM 的 Apple 硬件 (MacOS)。 我還確保在我的並行設置 > 處理器和內存 > 高級下,我啟用了 Hypervision 應用程序。
這個問題與Docker的另一個問題非常相似- The computer 'WINDOWS10-ON-SE' could not beresolution
請參閱我在https://stackoverflow.com/a/45099242/279272 上的回答
我也面臨同樣的問題,但它本質上是隨機的,我發現這是由於 docker start 腳本無法訪問網卡。 這種不可訪問性進一步阻止了 docker 的啟動過程。
我發現了一個 hack,它在我的 Windows 機器上運行良好
在管理模式下使用任何編輯器打開C:\\Program Files\\Docker\\Docker\\resources\\mobylinux.ps1
。 找到以下代碼(大約第 164 行)
$networkAdapter | Remove-NetIPAddress -Confirm:$false -ea SilentlyContinue
$networkAdapter | Set-NetIPInterface -Dhcp Disabled -ea SilentlyContinue
$networkAdapter | New-NetIPAddress -AddressFamily IPv4 -IPAddress $switchAddress -PrefixLength ($SwitchSubnetMaskSize) -ea Stop | Out-Null
在如下所示的新行中在第 165 行之后添加一個return
並保存文件。
$networkAdapter | Remove-NetIPAddress -Confirm:$false -ea SilentlyContinue
$networkAdapter | Set-NetIPInterface -Dhcp Disabled -ea SilentlyContinue
return
$networkAdapter | New-NetIPAddress -AddressFamily IPv4 -IPAddress $switchAddress -PrefixLength ($SwitchSubnetMaskSize) -ea Stop | Out-Null
現在重啟docker,重啟完成后在dos admin模式下執行以下命令手動設置網卡
netsh interface ipv4 set address name="vEthernet (DockerNAT)" static 10.0.75.1 255.255.255.0
每當您進行系統重啟並且 docker 完成啟動過程(由於任何原因)時,您都必須運行此命令。 提示:創建此命令的批處理文件並保存在方便的地方。
注意:任何 docker 更新都會撤銷 ps hack。 所以要注意...
要安裝 docker,需要 BIOS 級別的硬件虛擬化支持。 所以你可以做以下..
- 確保在啟動計算機時在主板設置中的 BIOS 設置中打開硬件虛擬化支持,在(系統安全 => 虛擬化技術 VTX => 啟用它)下,然后保存 BIOS 設置並正常啟動機器。 然后通過在您的 powershell 中以管理員身份運行此命令來啟用 hyper v(如果它未啟用):
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
對我來說,將 Windows 10 專業版更新到 1809 版解決了這個問題
在 Windows 10 上,我通過執行以下步驟解決了該問題:
法語 Windows 版本:
英文視窗版本:
希望這會幫助別人。
當您啟動 Windows 並啟動 docker 時,只需右鍵單擊右下欄中的 docker 並切換到 Windows 容器
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.