Doctor wont start after install

Just tried to install doctor on a AWS windows 2012 server.

Have tried to uninstall/restart etc. but getting the below message:

System.InvalidOperationException:
job failed with message: 'DockerDesktopVM' failed to start. (Virtual machine ID DAD5622D-EB63-41E4-8A2C-D955DA8E9CFF)

The Virtual Machine Management Service failed to start the virtual machine 'DockerDesktopVM' because one of the Hyper-V components is not running (Virtual machine ID DAD5622D-EB63-41E4-8A2C-D955DA8E9CFF).
   at Docker.Backend.HyperVInfrastructure.HandleUpdatedJob(CIMConcreteJob updatedJob) in C:\workspaces\main-merge\src\github.com\docker\pinata\win\src\Docker.Backend\HyperV\HyperVInfrastructure.cs:line 780
   at Docker.Backend.HyperVInfrastructure.<HandleMaybeAsyncJob>d__40.MoveNext() in C:\workspaces\main-merge\src\github.com\docker\pinata\win\src\Docker.Backend\HyperV\HyperVInfrastructure.cs:line 714
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Docker.Backend.HyperVInfrastructure.<StartVMAsync>d__32.MoveNext() in C:\workspaces\main-merge\src\github.com\docker\pinata\win\src\Docker.Backend\HyperV\HyperVInfrastructure.cs:line 554
--- 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.HyperV.<StartAsync>d__6.MoveNext() in C:\workspaces\main-merge\src\github.com\docker\pinata\win\src\Docker.Backend\HyperV\HyperV.cs:line 105
--- 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.HttpAPI.HyperVController.<StartAsync>d__7.MoveNext() in C:\workspaces\main-merge\src\github.com\docker\pinata\win\src\Docker.Backend\HttpAPI\HyperVController.cs:line 49
--- 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 System.Threading.Tasks.TaskHelpersExtensions.<CastToObject>d__1`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 System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__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 System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__5.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 System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__15.MoveNext()

Doctor who? I guess it was a typo, but if I think about it, Docker is like a doctor sometimes :slight_smile:

I moved the topic from the Docker Hub category to Docker Desktop for Windows, since you donā€™t have a problem with Docker Hub. I also edited your post to use code block. Please, format your post according to the below instructions next time:

Back to the question:

Docker Desktop is not for Windows Server, especially not for Windows Server 2012. Even if it could work, you would need ā€œNested virtualizationā€ since Docker Desktop creates a virtual machine. Here is a good summary from @vrapolinario about what you could do

Note that you need at least Windows Server 2016

If you want to run Linux containers, you need at least a virtual machine. There is no other way.

1 Like