gpt4 book ai didi

windows - 手动删除 Hyper-V 中的 MobyLinuxVM 后,Windows 10 上的 Docker 无法启动

转载 作者:IT老高 更新时间:2023-10-28 12:43:08 25 4
gpt4 key购买 nike

起初,docker 在我的正式版 Windows 10 上运行良好。

然后我出于某种原因删除了 Hyper-V 中的 MobyLinuxVM。之后, docker 无法工作。

然后我关闭了Hyper-V的功能并卸载了docker(当然是重启了电脑)。

然后我重新安装 docker 并再次打开 Hyper-V 的功能。但是 docker 仍然无法工作。

我已经在google上尝试了一些解决方案,但问题仍然存在。
我在 docker 启动期间检查了 MobyLinuxVM 的状态,发现 MobyLinuxVM 从未创建。

有人知道怎么解决吗?

这是屏幕截图和日志:

/image/8GbLw.png

[Version: 1.13.1 (10072)
Channel: Stable
Sha1: 94675c5a765e2c51fba6c10b87e0a1a4ed3dde51
Started on: 2017/02/23 09:35:27.478
Resources: C:\Program Files\Docker\Docker\Resources
OS: Windows 10 Pro
Edition: Professional
Id: 1511
Build: 10586
BuildLabName: 10586.672.amd64fre.th2_release_sec.161024-1825
File: C:\Users\212599222\AppData\Local\Docker\log.txt
CommandLine: "C:\Program Files\Docker\Docker\Docker for Windows.exe"
You can send feedback, including this log file, at https://github.com/docker/for-win/issues
\[09:35:27.603\]\[GUI \]\[Info \] Starting...
\[09:35:28.290\]\[Tracking \]\[Info \] Crash report and usage statistics are enabled
\[09:35:28.306\]\[SegmentApi \]\[Info \] Usage statistic: appLaunched
\[09:35:28.625\]\[SegmentApi \]\[Error \] Failed to track event appLaunched: An error occurred while sending the request.
\[09:35:28.625\]\[NamedPipeClient\]\[Info \] Sending Version()...
\[09:35:28.641\]\[NamedPipeClient\]\[Info \] Received response for Version
\[09:35:28.641\]\[SegmentApi \]\[Info \] Usage statistic: heartbeat
\[09:35:28.641\]\[SegmentApi \]\[Error \] Failed to track event heartbeat: An error occurred while sending the request.
\[09:34:34.255\]\[BackendServer \]\[Info \] Started
\[09:35:28.641\]\[NamedPipeServer\]\[Info \] Version()
\[09:35:28.641\]\[NamedPipeServer\]\[Info \] Version done in 00:00:00.
\[09:35:28.841\]\[Updater \]\[Info \] Checking for updates on channel Stable...
\[09:35:28.841\]\[NamedPipeClient\]\[Info \] Sending Start(Docker.Core.Settings)...
\[09:35:28.858\]\[NamedPipeServer\]\[Info \] Start(Docker.Core.Settings)
\[09:35:28.863\]\[UpdateFeedDownloader\]\[Error \] The remote name could not be resolved: 'download.docker.com'
\[09:35:28.863\]\[Updater \]\[Info \] No update available
\[09:35:28.862\]\[PowerMode \]\[Info \] Stop
\[09:35:28.863\]\[HyperV \]\[Info \] Stop
\[09:35:28.863\]\[PowerShell \]\[Info \] Run script with parameters: -Stop True...
\[09:35:28.863\]\[PowerShell \]\[Info \] Creating a Runspace Pool...
\[09:35:29.909\]\[PowerShell \]\[Info \] Runspace Pool created (Min=1, Max=2)
\[09:35:29.969\]\[HyperV \]\[Info \] Script started at 09:35:29.964
\[09:35:33.783\]\[HyperV \]\[Info \] Module loaded at 09:35:33.783
\[09:35:33.983\]\[HyperV \]\[Info \] VM MobyLinuxVM does not exist
\[09:35:33.983\]\[HyperV \]\[Debug \] \[stop\] took 00:00:05.1195593 to run
\[09:35:33.983\]\[OptimizeDisk \]\[Info \] Optimize
\[09:35:33.983\]\[PowerShell \]\[Info \] Run script...
\[09:35:33.999\]\[Moby \]\[Info \] Stop
\[09:35:34.014\]\[HyperVGuids \]\[Info \] Installing GUIDs...
\[09:35:34.014\]\[PowerMode \]\[Info \] Start
\[09:35:34.014\]\[HyperV \]\[Info \] Create
\[09:35:34.014\]\[PowerShell \]\[Info \] Run script with parameters: -Create True -VhdPathOverride -SwitchSubnetAddress 10.0.75.0 -SwitchSubnetMaskSize 24 -CPUs 2 -Memory 2048 -IsoFile C:\Program Files\Docker\Docker\Resources\mobylinux.iso...
\[09:35:34.014\]\[HyperVGuids \]\[Info \] GUIDs installed
\[09:35:34.033\]\[HyperV \]\[Info \] Script started at 09:35:34.033
\[09:35:34.036\]\[Firewall \]\[Info \] Removing all existing rules...
\[09:35:34.115\]\[HyperV \]\[Info \] Module loaded at 09:35:34.115
\[09:35:34.315\]\[HyperV \]\[Info \] Enabled workaround for Build 10586 VMSwitch issue
\[09:35:34.518\]\[Firewall \]\[Info \] All existing rules are removed.
\[09:35:34.518\]\[Firewall \]\[Info \] Opening ports for C:\Program Files\Docker\Docker\Resources\com.docker.proxy.exe...
\[09:35:35.451\]\[Firewall \]\[Info \] Opening ports for SMB...
\[09:35:36.358\]\[Firewall \]\[Info \] Ports are opened
\[09:36:31.192\]\[HyperV \]\[Info \] Creating Switch: DockerNAT...
\[09:37:26.994\]\[HyperV \]\[Info \] Switch created.
\[09:37:28.917\]\[Linux \]\[Error \] Failed to start: Unable to create: The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: The object already exists.

. Let's retry
\[09:37:28.917\]\[PowerShell \]\[Info \] Run script...
\[09:37:42.595\]\[HyperV \]\[Info \] Hyper-V is running
\[09:37:42.595\]\[PowerMode \]\[Info \] Stop
\[09:37:42.595\]\[HyperV \]\[Info \] Stop
\[09:37:42.596\]\[PowerShell \]\[Info \] Run script with parameters: -Stop True...
\[09:37:42.602\]\[HyperV \]\[Info \] Script started at 09:37:42.602
\[09:37:42.707\]\[HyperV \]\[Info \] Module loaded at 09:37:42.707
\[09:37:42.728\]\[HyperV \]\[Info \] VM MobyLinuxVM does not exist
\[09:37:42.728\]\[HyperV \]\[Debug \] \[stop\] took 00:00:00.1332364 to run
\[09:37:42.728\]\[OptimizeDisk \]\[Info \] Optimize
\[09:37:42.728\]\[PowerShell \]\[Info \] Run script...
\[09:37:42.744\]\[Moby \]\[Info \] Stop
\[09:37:42.752\]\[HyperV \]\[Info \] Destroy
\[09:37:42.753\]\[PowerShell \]\[Info \] Run script with parameters: -Destroy True -KeepVolume True...
\[09:37:42.761\]\[HyperV \]\[Info \] Script started at 09:37:42.761
\[09:37:42.850\]\[HyperV \]\[Info \] Module loaded at 09:37:42.850
\[09:37:42.864\]\[HyperV \]\[Info \] VM MobyLinuxVM does not exist
\[09:37:42.865\]\[HyperV \]\[Info \] Destroying Switch DockerNAT...
\[09:38:02.148\]\[HyperV \]\[Info \] Removing VM MobyLinuxVM...
\[09:38:02.163\]\[HyperV \]\[Debug \] \[destroy\] took 00:00:19.4109973 to run
\[09:38:02.163\]\[Firewall \]\[Info \] Closing ports...
\[09:38:02.163\]\[Firewall \]\[Info \] Removing all existing rules...
\[09:38:02.335\]\[Firewall \]\[Info \] Removing DockerProxy...
\[09:38:02.512\]\[Firewall \]\[Info \] Removed DockerProxy.
\[09:38:02.694\]\[Firewall \]\[Info \] Removing DockerSmbMount...
\[09:38:02.889\]\[Firewall \]\[Info \] Removed DockerSmbMount.
\[09:38:03.050\]\[Firewall \]\[Info \] All existing rules are removed.
\[09:38:03.050\]\[Firewall \]\[Info \] Ports are closed
\[09:38:03.051\]\[HyperVGuids \]\[Info \] Removing GUIDs...
\[09:38:03.056\]\[HyperVGuids \]\[Info \] GUIDs removed
\[09:38:03.057\]\[HyperV \]\[Info \] Create
\[09:38:03.057\]\[PowerShell \]\[Info \] Run script with parameters: -Create True -VhdPathOverride -SwitchSubnetAddress 10.0.75.0 -SwitchSubnetMaskSize 24 -CPUs 2 -Memory 2048 -IsoFile C:\Program Files\Docker\Docker\Resources\mobylinux.iso...
\[09:38:03.063\]\[HyperV \]\[Info \] Script started at 09:38:03.063
\[09:38:03.122\]\[HyperV \]\[Info \] Module loaded at 09:38:03.122
\[09:38:03.178\]\[HyperV \]\[Info \] Enabled workaround for Build 10586 VMSwitch issue
\[09:38:13.824\]\[HyperV \]\[Info \] Creating Switch: DockerNAT...
\[09:38:28.719\]\[HyperV \]\[Info \] Switch created.
\[09:38:29.134\]\[PowerMode \]\[Info \] Stop
\[09:38:29.134\]\[HyperV \]\[Info \] Stop
\[09:38:29.135\]\[PowerShell \]\[Info \] Run script with parameters: -Stop True...
\[09:38:29.142\]\[HyperV \]\[Info \] Script started at 09:38:29.141
\[09:38:29.223\]\[HyperV \]\[Info \] Module loaded at 09:38:29.223
\[09:38:29.236\]\[HyperV \]\[Info \] VM MobyLinuxVM does not exist
\[09:38:29.237\]\[HyperV \]\[Debug \] \[stop\] took 00:00:00.1021625 to run
\[09:38:29.237\]\[OptimizeDisk \]\[Info \] Optimize
\[09:38:29.237\]\[PowerShell \]\[Info \] Run script...
\[09:38:29.247\]\[Moby \]\[Info \] Stop
\[09:38:29.253\]\[HyperV \]\[Info \] Destroy
\[09:38:29.254\]\[PowerShell \]\[Info \] Run script with parameters: -Destroy True -KeepVolume True...
\[09:38:29.262\]\[HyperV \]\[Info \] Script started at 09:38:29.261
\[09:38:29.335\]\[HyperV \]\[Info \] Module loaded at 09:38:29.335
\[09:38:29.347\]\[HyperV \]\[Info \] VM MobyLinuxVM does not exist
\[09:38:29.348\]\[HyperV \]\[Info \] Destroying Switch DockerNAT...
\[09:38:38.264\]\[HyperV \]\[Info \] Removing VM MobyLinuxVM...
\[09:38:38.276\]\[HyperV \]\[Debug \] \[destroy\] took 00:00:09.0233008 to run
\[09:38:38.276\]\[Firewall \]\[Info \] Closing ports...
\[09:38:38.276\]\[Firewall \]\[Info \] Removing all existing rules...
\[09:38:38.488\]\[Firewall \]\[Info \] All existing rules are removed.
\[09:38:38.488\]\[Firewall \]\[Info \] Ports are closed
\[09:38:38.488\]\[HyperVGuids \]\[Info \] Removing GUIDs...
\[09:38:38.488\]\[HyperVGuids \]\[Info \] GUIDs removed
\[09:38:38.493\]\[NamedPipeServer\]\[Error \] Unable to execute Start: Unable to create: The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: The object already exists.

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)
\[09:38:38.565\]\[NamedPipeClient\]\[Error \] Unable to send Start: Unable to create: The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: The object already exists.


\[09:38:38.567\]\[Notifications \]\[Error \] Unable to create: The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: The object already exists.


\[09:39:59.534\]\[SegmentApi \]\[Info \] Usage statistic: actionMenuSettings
\[09:40:07.295\]\[ErrorReportWindow\]\[Info \] Open logs][1]

最佳答案

Then I reinstall the docker and turn on the feature of Hyper-V again.

请务必先开启 Hyper-V 的功能(并重启)

然后 reinstall Docker for Windows .
见“What to know before you install”:

The current version of Docker for Windows runs on 64bit Windows 10 Pro, Enterprise and Education (1511 November update, Build 10586 or later).

The Hyper-V package must be enabled for Docker for Windows to work. The Docker for Windows installer will enable it for you, if needed.

docker/for-win issue 248 中报告了您的特定错误消息在此之前 issue 214

Unable to create: 
The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop:
The object already exists.

作为 noted in this commenthere ,尝试删除保存的虚拟机并重新启动。

you should be in C:\Program Files\Docker\Docker\resources to run the commands.
So let me refine the sequence of commands that you could run:

  • 退出应用程序
  • 停止服务com.docker.service
  • cd 'C:\Program Files\Docker\Docker\resources'
  • .\MobyLinux.ps1 -Destroy
  • 检查是否删除了 VHDX 文件(C:\Users\Public\Public Documents\Hyper-V\Virtual hard disks\MobyLinuxVM.vhdx)
  • .\MobyLinux.ps1 -创建

关于windows - 手动删除 Hyper-V 中的 MobyLinuxVM 后,Windows 10 上的 Docker 无法启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42500353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com