简体   繁体   中英

Docker Failed to Initialize on Windows

Here, I have problem regarding pulling docker-dev in docker image for making my development environment but when I tried to pull docker-dev. I got the error like docker manifest not found. Can anyone help me out with this error...plz

before this I want to know about the docker failed to initialize error which i'm having right now...

the error is like, 在此处输入图像描述

I tried so many things like re-install the docker desktop or WSL updates, but didn't worked.

And error in the command be like... 在此处输入图像描述 So if someone can help me out with this....plz help me out

Got the same issue and fixed it by deleting %appdata%\Docker as mentioned by Github User "tocklime"

(Original Source : https://github.com/docker/for-win/issues/3088 ) 在此处输入图像描述

My solution: delete %appdata%\Docker\settings.json and let Docker to create a new one.

Take a backup of the file for the next time it gets broken.

<tl;dr>

I face this issue almost every month and I hope this will get fixed definitely.

Following tmBlackCape answer, I checked the %appdata%\Docker directory and found settings.json damaged (editor tells it's a binary file and of course it shouldn't).

I deleted the file and Docker Service (still running) created a new one with default values. If the service isn't running, just launch it again.

You could need to change settings (via GUI, as recommended) to catch your needs.

I made a backup copy of my custom settings.json so next time I can replace the broken one without losing custom configuration.

Go to the directory C:\Users-------\AppData\Roaming\Docker and delete the file settings.json . Docker takes care of rewriting it at startup.

This manipulation solved the problem for me !

Docker failed to initialize

C:\Users[USER]\AppData\Local\Docker

C:\Users[USER]\AppData\Roaming\Docker

C:\Users[USER]\AppData\Roaming\Docker Desktop

Once deleted above directory, I didn't have to do anything else, Docker Desktop started booting up as normal.

This happened to me after Docker Desktop upgrade to version 3.6.0 (67351), too. (Which was surprising, because it worked before the upgrade.)

Due to the help in the top answer right now, I went to the above settings directory: %appdata%\Docker , looked at the logs and deleted/renamed the file settings.json -> Docker Desktop started immediatelly ; there had been a process retrying in the background.

In the time before that, the backend.exe.log had been all "unmarshal" something something:

    settings.json: json: cannot unmarshal bool into Go struct field Content.proxyHttpMode of type string"
common/cmd/com.docker.backend/internal/settingsloader.GetSettings(0x0, 0x0, 0x0)

So, the above message 'tipped me off' as to where the actual error on start may be. Hmm...

For me the solutions here didn't help, but here's what helped.

  1. Make sure the folder .docker/ in your home directory isn't marked as hidden in Windows. If it's hidden, Docker won't see it.
  2. Make sure docker has Active Directory to .docker folder. For example, if the owner of .docker/ is SYSTEM and not your user, Docker won't be able to read it and crash.

For me deleting the folder %appdata%\Docker did not work.

Instead I had to run the following power shell command as admin.

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

References.

  1. https://stackoverflow.com/a/63845592/1977871

  2. https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v#enable-hyper-v-using-powershell

My windows features with running docker desktop are as follows.

Windows 功能的屏幕截图

I had the same issue. I'm on Docker Desktop 4.8.0. The following solution worked for me:

  1. Uninstall Docker Desktop
  2. Delete.docker folder from C:\Users\{Username}
  3. Delete Docker folder from C:\Users\{Username}\AppData\Local
  4. Delete Docker folder from C:\Users\{Username}\AppData\Roaming
  5. Delete Docker folder from C:\Program Files
  6. Run CCleaner on Registry and Custom Clean
  7. Restart Computer
  8. Install Docker
  9. Restart Computer
  10. Start Docker

That's all.

  1. Go to C:\Users\asd\AppData\Local and delete Downloaded Installation directory.
  2. C:\Users\asd\AppData\Roaming and delete Docker and Docker Desktop directory.

Then start docker.

Didn't found the AppData folder in users[myUser] or anywhere. re-install solve it for me

The error message I got was not exactly the same the OP got. For me, it said Docker failed to initialize. Docker Desktop is shutting down Docker failed to initialize. Docker Desktop is shutting down .

TL;DR

The powershell executable was missing from my local machies PATH . I had to add C:\Windows\System32\WindowsPowerShell\v1.0 and docker started again.

The longer story

I tried everything that was mentined in this thread and nothing worked for me. When I looked at the task manager of my local machine to see if any docker-related process was started, I noticed that Docker Desktop.exe itself was started. However, the com.docker.backend.exe not. Docker tries to start that exe in an infinite loop, but as soon as it started it crashed again after half a second.

I then took a look into com.docker.backend.exe.log , which is located in %localappdata%\Docker\log\host and noticed the following line:

[2022-07-07T10:46:57.936079700Z][com.docker.backend.exe][F] exec: "powershell": executable file not found in %PATH%

I then went ahead and just added the path to powershell to PATH (which is C:\Windows\System32\WindowsPowerShell\v1.0 )`. As soon as I added that, everything started working again.

I have no idea how the path to the powershell executable got removed from PATH . I certainly did not do that myself.

您必须删除 %appdata%\\Docker 并重新启动计算机

It happened due to local data corruption. You can check in VM log inside %appdata%\Docker. I was able to reset and restart by renaming setting.json and then restart the Docker desktop by deleting all the previous log folder and temp folder clean. If this does not help. Try to kill all the processes running in through the task manager在此处输入图像描述

and then run Power shell in administrator mode and then shoot the command if you are using an older version of Lsmanager Restart-Service LxssManager . 在此处输入图像描述

On my side, uninstalling HyperV did the trick :

Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Hypervisor

I also (as suggested in the voted answer):

  • Uninstalled docker desktop,
  • Deleted any docker related content in %APPDATA% as suggested
  • Delete any docker related keyys in registry (may be not necessary)
  • Then reinstalled it

And it solved the problem (but without hyperV removal it didn't work).

它通过删除文件 C:\Users{username}\AppData\Roaming\Docker\settings.json 解决了我

There are a few great solutions; however, it didn't work for me. Most of the "fixes" suggested here are already implemented and it just didn't work. I chose a different approach. I looked at the docker releases and saw what was actually affected by their latest version not working (4.10). These things are normal, especially if the software engine has been updated. Going through Docker releases, the latest release that didn't touch the Docker engine is 4.8.0. I downloaded and works great.

最新更新 4.10.1 有问题,我降级到 4.6.1 并且它工作但我认为 powershell 与这个问题密切相关

Removing settings.json file or %AppData%\Docker folder did not work for me. After uninstalling/installing the docker, the issue was solved. (Note: I couldn't try other possible solutions that are required the admin privilege)

The below Steps worked for me,

Step 01: Navigate to the below-mentioned paths and delete the below-mentioned directories,

C:\Users[USERNAME]\AppData\Local\Docker directory

C:\Users[USERNAME]\AppData\Roaming\Docker directory

C:\Users[USERNAME]\AppData\Roaming\Docker Desktop directory

Then restart the docker again

If you didn't find the AppData folder in users[USERNAME] or anywhere

Step 02: Type the below path in the "Run" to directly open the app data location for you

%appdata%\Docker

Then Delete the below-mentioned directories,

C:\Users[USERNAME]\AppData\Local\Docker directory

C:\Users[USERNAME]\AppData\Roaming\Docker directory

C:\Users[USERNAME]\AppData\Roaming\Docker Desktop directory

Then restart the docker again

Note: If these steps do not help you. Try to kill all the processes running in through the task manager. And again delete the directories and start the docker

if you still can't find the issue you may use this trick and i'm 100% sure this will work

first check your operating system is up to date means no remaining updates if you pass this step then come to 2 step open window command prompt in run as administrator then type wsl --install then type wsl --list --online then wsl --install -d Debian then open docker if error come then install wsl 2 linux https://learn.microsoft.com/en-us/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package

then restart docker or your machine and then if error also occur then type then wsl --update i hope this will work Regard: Hammad Khadim

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM