Getting error while switching to Linux Container in docker
Asked Answered
E

2

5

I have installed docker. When its running in windows container it works fine. But if i switch to Linux container getting below error.

Os: Windows 10 Docker Desktop: 2.2.0.3

Error:

Docker.Core.Backend.BackendDestroyException:
Unable to stop Hyper-V VM: Service 'Hyper-V Host Compute Service (vmcompute)' cannot be started due to the following error: Cannot start service vmcompute on computer '.'.
at Enable-MobyLinuxRequiredService, <No file>: line 103
at <ScriptBlock>, <No file>: line 804
   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.<>c__DisplayClass39_0.<SwitchDaemon>b__0()
   at Docker.ApiServices.TaskQueuing.TaskQueue.<>c__DisplayClass18_0.<.ctor>b__1()
Erbe answered 20/2, 2020 at 5:39 Comment(1)
i have tried this but vmcompute.exe is not available under "program settings" list.Erbe
V
7

according to this

try the following:

1, Open "Window Security"
2, Open "App & Browser control"
3, Click "Exploit protection settings" at the bottom
4, Switch to "Program settings" tab
5, Locate "C:\WINDOWS\System32\vmcompute.exe" in the list and expand it
6, Click "Edit"
7, Scroll down to "Code flow guard (CFG)" and uncheck "Override system settings"
8, Start vmcompute from powershell "net start vmcompute"
Vilify answered 20/2, 2020 at 5:42 Comment(3)
unable to find vmcompute.exe (step5) in the listErbe
it should be there , try to search for it .Vilify
It helped, Can you explain what was the trick? What is Code flow guard (CFG) and whatis the impact?Paracelsus
E
0

I think there was a problem with the latest update. People are having the same issue with version 2.2.0.3 (42716), as mentioned here

Attempts that did not worked for me

  1. Disabled control flow guard https://mcmap.net/q/1999966/-getting-error-while-switching-to-linux-container-in-docker (bring it back if it doesn't work)
  2. Disable Linux subsystem (git issue).
  3. Re-installation.

What worked for me is a factory reset, as suggested here. Uninstallation doesn't seem to wipe the settings,

Extended answered 4/3, 2020 at 10:9 Comment(2)
Do you mean a Windows Factory reset?Pankhurst
@Pankhurst - There is an option in Docker Desktop that allows you to do a factory reset.Extended

© 2022 - 2024 — McMap. All rights reserved.