On my laptop (Dell Latitude 5590, Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz[Cores 4] [Logical processors 8], BIOS v 1.16.0), running Windows 10 (10.0.19042), I cannot start Ubuntu any more, nor start Docker (Docker Desktop 3.2.2).
WSL version is 5.4.72.
Launching Ubuntu, I get:
Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x8000000d
Error: 0x8000000d An illegal state change was requested.
Press any key to continue...
wslconfig says:
> wslconfig.exe /list /all
Windows Subsystem for Linux Distributions:
docker-desktop
Ubuntu-20.04
If I try to Clean/purge all data of Docker (from Docker Desktop's dashboard), or to reset to factory settings, I get the following error:
System.InvalidOperationException:
Failed to terminate distro: exit code: -1
stdout: There is no distribution with the supplied name.
stderr:
at Docker.ApiServices.WSL2.WslShortLivedCommandResult.LogAndThrowIfUnexpectedExitCode(String prefix, ILogger log, Int32 expectedExitCode) in C:\workspaces\PR-15387\src\github.com\docker\pinata\win\src\Docker.ApiServices\WSL2\WslCommand.cs:line 146
at Docker.Engines.WSL2.WSL2Provisioning.<TerminateDistroAsync>d__15.MoveNext() in C:\workspaces\PR-15387\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\WSL2\WSL2Provisioning.cs:line 153
--- 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.Engines.WSL2.WSL2Provisioning.<TerminateDistrosAsync>d__11.MoveNext() in C:\workspaces\PR-15387\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\WSL2\WSL2Provisioning.cs:line 118
--- 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.Engines.WSL2.WSL2Provisioning.<UnprovisionAsync>d__9.MoveNext() in C:\workspaces\PR-15387\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\WSL2\WSL2Provisioning.cs:line 91
--- 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.Engines.WSL2.LinuxWSL2Engine.<DoDestroyAsync>d__32.MoveNext() in C:\workspaces\PR-15387\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\WSL2\LinuxWSL2Engine.cs:line 316
--- 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.ApiServices.StateMachines.DestroyTransition.<DoRunAsync>d__6.MoveNext() in C:\workspaces\PR-15387\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\DestroyTransition.cs:line 39
--- 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.ApiServices.StateMachines.EngineStateMachine.<DestroyAsync>d__16.MoveNext() in C:\workspaces\PR-15387\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\EngineStateMachine.cs:line 90
--- 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.Engines.Engines.<RemoveDataAsync>d__24.MoveNext() in C:\workspaces\PR-15387\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\Engines.cs:line 190
The system used to work until few days ago. I don't know what happened (maybe a firmware/OS/software update?).
I already tried the following, but none worked for me:
uninstall and reinstall Ubuntu (20.04) -> When launching Ubuntu, the error switched to:
Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x800706be
Error: 0x800706be The remote procedure call failed.
Press any key to continue...
Attempted to install Alpine WSL: got the same error:
Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x800706be
WslRegisterDistribution failed
Error: 0x800706be The remote procedure call failed.
Press any key to continue...
uninstall and reinstall Docker Desktop
perform the procedure described at: https://docs.microsoft.com/en-us/windows/wsl/install-win10
reboot my machine
verify that WSL and Hd virtualization was enabled in the BIOS settings
Search for "Turn Windows features on or off" from start menu; verify that "Virtual Machine Platform" was enabled
run one or more or all of the following in an elevated powershell:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Dism /Online /Cleanup-Image /RestoreHealth
wsl --unregister docker-desktop
wsl --unregister docker-desktop-data
Launched this batch:
net stop wuauserv
net stop Cryptsvc
ren %windir%\SoftwareDistribution sdold.old
ren %windir%\system32\catroot2 crt2old.old
net start wuauserv
net start Cryptsvc
Uninstalled Ubuntu, Docker, WSL, as described at https://pureinfotech.com/uninstall-wsl2-windows-10/ , reinstalled everything from scratch
Switched to Windows containers -> got request to run
Enable-WindowsOptionalFeature -Online -FeatureName $("Microsoft-Hyper-V", "Containers") -All
Run the required command within an elevated PowerShell -> successfully switched to windows containers; attempt to switch to Linux container again -> no way: Docker keeps running windows containers.
In powerShell, launched the following:
Start-Service "Hyper-V Virtual Machine Management"
Start-Service "Hyper-V Host Compute Service"
updated Docker Desktop to rev 3.3.3
run the following within an elevated command prompt:
DISM.exe /Online /Cleanup-image /Restorehealth
sfc /scannow
Launched:
BCDedit /set hypervisorlaunchtype Off
(also tried:
bcdedit /set hypervisorlaunchtype auto
)
Launched:
dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All
attempt to restart Windows in safe mode and launch Ubuntu -> no luck
changed Docker Desktop's setting from the dashboard, disabling "Use the WSL 2 based engine" -> docker works with Linux containers! (this doesn't solve the problem, though)
searched for other solutions on Internet -> none solved my problem
Any suggestions?
User contributions licensed under CC BY-SA 3.0