Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't start Docker Desktop after auto-upgrade to v4.33.1 #14236

Closed
wcruz-br opened this issue Aug 2, 2024 · 14 comments
Closed

Can't start Docker Desktop after auto-upgrade to v4.33.1 #14236

wcruz-br opened this issue Aug 2, 2024 · 14 comments

Comments

@wcruz-br
Copy link

wcruz-br commented Aug 2, 2024

Description

After choosing to upgrade, Docker keeps asking admin access successively for Docker Desktop Privileged Helper, saying it is trying to run "C:\Program Files\Docker\Docker\resources\com.docker.admin.exe" wsl-update

When I get tired of clicking Yes and finally click on No, it shows this error.

image

Then I tried running Docker Desktop as admin. It keeps "starting the docker engine" then "turning off the docker engine" eternally.

If I run "C:\Program Files\Docker\Docker\resources\com.docker.admin.exe" wsl-update manually, it says the most recent version is already installed.

C:\Users\User>"C:\Program Files\Docker\Docker\resources\com.docker.admin.exe" wsl-update
[2024-08-02T20:56:47.836390100Z][com.docker.admin.exe.update] updating wsl with -> wsl.exe --update --web-download
[2024-08-02T20:56:47.922933300Z][com.docker.admin.exe.update] update completed successfully: Verificando se há atualizações.
A versão mais recente do Subsistema do Windows para Linux já está instalada.

I can't use it anymore. It is broken.

Reproduce

  1. Start Docker Desktop
  2. Go to notifications and click on that one that says it has a new version to instal
  3. Click on restart and update
  4. Cry

Expected behavior

No response

docker version

I can't get this because I can't start docker anymore

docker info

I can't get this because I can't start docker anymore

Diagnostics ID

86E8A4BB-CFF5-46EE-AE3B-3990D15A9926/20240802202900

Additional Info

No response

@wcruz-br
Copy link
Author

wcruz-br commented Aug 2, 2024

com.docker.admin.exe.log

@diekleinekuh
Copy link

I have the same issue.

My WSL2 installation was also up to date at version 2.2.4. After reading the changelog of v4.33.1 I also tried installing the latest pre-release of wsl2 2.3.14. This didn't help.
host_logs.zip

I downgraded to v4.33.0 and the docker engine starts again.

@wcruz-br
Copy link
Author

wcruz-br commented Aug 2, 2024

How did you downgrade, @diekleinekuh? I tried to instal 4.33.0 over 4.33.1 but it says "existing installation is up to date" and exits. It seems I will need to unistall and install again.

@diekleinekuh
Copy link

@wcruz-br Yes, you have to manually uninstall 4.33.1 before running the installer for 4.33.0.

@glen-84
Copy link

glen-84 commented Aug 3, 2024

Related: #13806.

@tea
Copy link

tea commented Aug 6, 2024

I've had the same issue. For me, it was due to custom older WSL2 kernel. Once I switched to stock kernel, Docker started up.

@andrea-reale
Copy link

andrea-reale commented Aug 6, 2024

Hey all, I have shared a development build that should avoid this loop of "WSL Update required" prompts here. Feel free to try that out and report any feedback!

(Please, also note that custom WSL2 kernels are not officially supported in Docker Desktop)

@diekleinekuh
Copy link

@tea Thanks for sharing. I also had a custom WSL kernel that I made years ago and totally forgot about. Weird that it worked fine all the time but fails all of a sudden with a minor update of Docker Desktop from v4.33.0 to v4.33.1... I guess this resolves the issue for me.

@andrea-reale
Copy link

Hey @diekleinekuh,

the 4.33.1 development here I shared in this thread (and future Docker Desktop version) will very likely keep working with your custom kernel.

It's impossible for us to officially support custom kernels, as Docker Desktop as strong dependencies on many kernel features, and different functionalities may work differently or not at all depending on how you built your kernel.

For openness, the source of the issue with custom kernels and Docker Dekstop 4.33.1 is that 4.33.1 introduced support for the upcoming new official kernel in WSL 2.3.11 and later, which requires module loading. Unfortunately, module loading is disabled in WSL2 and custom kernels, hence the problem you were experiencing. The development build makes so that custom kernels will keep booting as long as you have all required features built-in.

@lost-RD
Copy link

lost-RD commented Aug 7, 2024

I had this issue too, solved thanks to the comments here. For anybody else who did this, head to %HOMEPATH% and find .wslconfig. Mine looked like this:

[wsl2]
kernel=C:\\Users\\user\\bzimage

I renamed the file to disable the config. I vaguely remember setting this up 18 months ago but I don't remember why.

Seems like the error details could be more specific, but I'm glad to have found a resolution.

@wcruz-br
Copy link
Author

wcruz-br commented Aug 9, 2024

the 4.33.1 development here I shared in this thread (and future Docker Desktop version) will very likely keep working with your custom kernel.

It's impossible for us to officially support custom kernels, as Docker Desktop as strong dependencies on many kernel features, and different functionalities may work differently or not at all depending on how you built your kernel.

For openness, the source of the issue with custom kernels and Docker Dekstop 4.33.1 is that 4.33.1 introduced support for the upcoming new official kernel in WSL 2.3.11 and later, which requires module loading. Unfortunately, module loading is disabled in WSL2 and custom kernels, hence the problem you were experiencing. The development build makes so that custom kernels will keep booting as long as you have all required features built-in.

Thank you @andrea-reale ! That was my problem, I was using a custom kernel I compiled some time ago, while trying to make virtualization work in my WSL installation (before learning that it would only work in Windows 11). Now that I disabled the custom kernel at .wslconfig, it is working fine.

@wcruz-br wcruz-br closed this as completed Aug 9, 2024
@chuoke
Copy link

chuoke commented Aug 15, 2024

My update UI is wrong. Can't auto update. Current is v4.32.0, which I upgraded this manually.

image

@kostorv
Copy link

kostorv commented Aug 19, 2024

Anyone tried through trial and error the actual settings on custom kernels that will work with Docker Desktop?

Tried this one but no solution: microsoft/WSL#11771

@jabeztadesse
Copy link

I found a solution that worked for me here: https://forums.docker.com/t/docker-desktop-distro-installation-failed-after-upgradation-to-4-32-0/142393

  1. Stop Docker Desktop
  2. Run the following command in your terminal wsl --unregister docker-desktop
  3. Run Docker Desktop again as Admin (Will recreate the distro)

Boom! It should now work fine ...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

10 participants