Docker l解析到您的系统根目录和程序文件目录(在大多数情况下为“C:\Program Files”,但也可以位于手动设置的驱动器号上,例如“B:”(通常用于嵌入式系统以防止自动创建交换文件),在这种情况下为“B:\Program Files”

Docker l解析到您的系统根目录和程序文件目录(在大多数情况下为“C:\Program Files”,但也可以位于手动设置的驱动器号上,例如“B:”(通常用于嵌入式系统以防止自动创建交换文件),在这种情况下为“B:\Program Files”,docker,windows-10,virtualization,hypervisor,Docker,Windows 10,Virtualization,Hypervisor,它依赖于Windows 10系统上Docker Desktop的标准安装路径,如果您对其进行了更改,则必须相应地调整路径。您将不会收到任何反馈。粘贴并执行运行对话框中的命令后,只需从“开始”菜单启动“Docker Desktop” 所有示例中的路径都用引号(“”)设置,以保证它可以执行。例如,如果您希望在桌面上准备一个快捷方式,以便在部署后首次使用,这也是必要的,例如标题为“运行此一次(如果Docker Desktop无法启动)”。这样,您可以使其成为预安装Docker的图像的一部分 请注意,主

它依赖于Windows 10系统上Docker Desktop的标准安装路径,如果您对其进行了更改,则必须相应地调整路径。您将不会收到任何反馈。粘贴并执行运行对话框中的命令后,只需从“开始”菜单启动“Docker Desktop”

所有示例中的路径都用引号(“”)设置,以保证它可以执行。例如,如果您希望在桌面上准备一个快捷方式,以便在部署后首次使用,这也是必要的,例如标题为“运行此一次(如果Docker Desktop无法启动)”。这样,您可以使其成为预安装Docker的图像的一部分


请注意,主要问题是Docker使用WSL2提供其基于Linux的容器(仅在Windows 10 Home上)要运行Windows容器,Hyper-V需要启用,遗憾的是后者与Windows 10桌面操作系统上的WSL2相矛盾。之后,您可以通过Windows 10功能与虚拟机服务和Windows容器一起启用Hyper-V,但不能保证它能与WSL2一起工作。

您有这样的功能吗启用r?您确定在切换到Linux容器时没有尝试运行windows容器吗?欢迎使用堆栈溢出!请预留时间阅读并访问以提供帮助,不仅是询问问题的用户,还有许多其他有类似问题的用户。您使用哪个版本的windows解决此问题?如果您不知道,打开cmd.exe并键入
winver
Docker.Core.Backend.BackendDestroyException:
One or more errors occurred.
   at Docker.Core.Pipe.NamedPipeClient.<TrySendAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Docker.Core.Pipe.NamedPipeClient.Send(String action, Object[] parameters)
   at Docker.Actions.DoStart(SynchronizationContext syncCtx, Boolean showWelcomeWindow, Boolean withNotifications)
   at Docker.Actions.<>c__DisplayClass26_0.<StartAsync>b__0()
   at Docker.ApiServices.TaskQueuing.TaskQueue.<>c__DisplayClass18_0.<.ctor>b__1()

  System.AggregateException:
  One or more errors occurred.
     at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
     at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
     at Docker.Backend.LifecycleClient.DockerStart()
     at Docker.Backend.ContainerEngine.Linux.DoStart(Settings settings, String daemonOptions, Credential credential)
     at Docker.Backend.ContainerEngine.Linux.Start(Settings settings, String daemonOptions, Credential credential)

     Docker.Core.HttpBadResponseException:
     unable to fetch daemon.json: Get http://unix/engine/daemon.json: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
        at Docker.Backend.HttpClientExtensions.<ParseResponseBodyAsJsonAsync>d__2`1.MoveNext()
     --- End of stack trace from previous location where exception was thrown ---
        at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
        at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
        at Docker.Backend.HttpClientExtensions.<GetJsonAsync>d__0`1.MoveNext()
services
services.msc
services.msc
cmd
powershell
cmd -C "%ProgramFiles%\Docker\Docker\DockerCli.exe -SwitchDaemon"
& "Env:ProgramFiles\Docker\Docker\DockerCli.exe -SwitchDaemon"
powershell.exe & "$Env:ProgramFiles/Docker/Docker/DockerCli.exe -SwitchDaemon"