【问题标题】:How to run docker on windows 10?如何在 Windows 10 上运行 docker?
【发布时间】:2019-07-03 01:18:32
【问题描述】:

我刚刚在 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 'WP2975' because 
the object was not found. The object might have been deleted. Verify that 
the Virtual Machine Management service on the computer is running.
at New-Switch, <No file>: line 121
at <ScriptBlock>, <No file>: line 411
at Docker.Core.Pipe.NamedPipeClient.Send(String action, Object[] parameters) 
in C:\workspaces\stable 18.09.x\src\github.com\docker\pinata\win\src\Docker.Core\pipe\NamedPipeClient.cs:line 36
at Docker.Actions.DoStart(SynchronizationContext syncCtx, Boolean 
showWelcomeWindow, Boolean executeAfterStartCleanup) in 
C:\workspaces\stable- 
18.09.x\src\github.com\docker\pinata\win\src\Docker.Windows\Actions.cs:line 92
at Docker.Actions.<>c__DisplayClass19_0.<Start>b__0() in 
C:\workspaces\stable- 
18.09.x\src\github.com\docker\pinata\win\src\Docker.Windows\Actions.cs:line 74
at Docker.WPF.TaskQueue.<>c__DisplayClass19_0.<.ctor>b__1() in 
C:\workspaces\stable- 
18.09.x\src\github.com\docker\pinata\win\src\Docker.WPF\TaskQueue.cs:line 59

我检查了计算机上是否正在运行 Hyper-V。

我还在powershell中做了以下操作:

确保通过运行 PowerShell cmdlet 启用 Windows Hyper-V 功能:

 Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All -Verbose

通过运行 PowerShell cmdlet 确保启用 Windows 容器功能:

 Enable-WindowsOptionalFeature -Online -FeatureName Containers -All -Verbose

确保 Hypervisor 在引导配置数据库 (BCD) 中设置为自动启动 通过在提升的命令提示符下运行命令:

 bcdedit /set hypervisorlaunchtype Auto

(找到它:Failed to start the virtual machine 'MobyLinuxVM' because one of the Hyper-V components is not running

但没有任何帮助。

我也重装了两次docker。

【问题讨论】:

  • 您是否尝试过以管理员身份在命令提示符中运行MOFCOM %SYSTEMROOT%\System32\WindowsVirtualization.V2.mof。之后重新启动您的机器。在这里找到:community.spiceworks.com/how_to/…
  • 商务部无法识别,我试过了
  • 抱歉,打错字了(MOFCOMP 不是 mofcom):MOFCOMP %SYSTEMROOT%\System32\WindowsVirtualization.V2.mof
  • 我在回答并尝试之后才注意到,但即使在重新启动后也没有帮助。
  • 您使用的 Windows 版本号是多少,好像是最新的?

标签: docker


【解决方案1】:

请确保以下三个windows服务处于运行状态

HV Host Service
Hyper-V Host Compute Service
Hyper-V Virtual Machine Management

【讨论】:

  • Hyper-V 主机计算服务未运行。我无法运行它(错误 1053)。
  • 您能否尝试以下分步操作:启用 Hyper-V 以在 Windows 10 上使用 blogs.technet.microsoft.com/canitpro/2015/09/08/… 2. 大多数 Hyper-v 问题与网络有关,请尝试更新网络驱动程序到最新版本,看看它是否有帮助。 3. 也请参考以下文章,看看是否有帮助。在 Windows 10 中查找缺失的 Hyper-V 工具的解决方法petri.com/workaround-finding-missing-hyper-v-tools-windows-10
  • 它适用于 Windows 容器,但是当我切换到 linux 容器时它就不行了。
  • docker 桌面设置下 --> 进阶你能看到 MobyLinux 的虚拟硬盘的路径吗,可能是 C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks\MobyLinuxVM .vhdx ,是否存在。
  • 不,磁盘映像位置旁边没有任何内容
【解决方案2】:

如果您所指的 Windows 10 有一个古老的版本(低于周年纪念日,即 1607),那么您根本不可能让它工作。要检查操作系统的版本,请运行“winver”。这些版本的问题是它们不支持 Docker 要求的嵌套虚拟化。

现在,不清楚您在哪里运行您的虚拟机。如果它是您 PC 上的 VMWare,它应该相对容易修复,但如果它是云,则可能是另一回事。问题是,例如,在 Azure 中,并非所有 VM 都支持嵌套虚拟化,因此如果您急于配置 VM,则可能会出现问题。如果您想正确使用,请使用 v3 VM 类型及更高版本 (refer this article for more info)。

在我的情况下,“HV 主机服务”效果不佳,但幸运的是,我能够将 VM 调整为适当的层 (v3),瞧! Docker 立即启动。

【讨论】:

    猜你喜欢
    • 2021-03-25
    • 1970-01-01
    • 2020-12-07
    • 2023-03-30
    • 2022-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多