Executing docker version
command on Windows returns the following results:
C:\Projects> docker version
Client:
Version: 1.13.0-dev
API version: 1.25
Go version: go1.7.3
Git commit: d8d3314
Built: Tue Nov 1 03:05:34 2016
OS/Arch: windows/amd64
error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.25/version: open //./pipe/docker_engine: The system cannot find the file
specified. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running.
Running the diagnostics produces the following:
C:\Projects> wget https://github.com/Microsoft/Virtualization-
Documentation/raw/master/windows-server-container-tools/Debug-
ContainerHost/Debug-ContainerHost.ps1 -UseBasicParsin | iex
Checking for common problems
Describing Windows Version and Prerequisites
[+] Is Windows 10 Anniversary Update or Windows Server 2016 608ms
[+] Has KB3192366, KB3194496, or later installed if running Windows build 14393 141ms
[+] Is not a build with blocking issues 29ms
Describing Docker is installed
[-] A Docker service is installed - 'Docker' or 'com.Docker.Service' 134ms
Expected: value to not be empty
27: $services | Should Not BeNullOrEmpty
at <ScriptBlock>, <No file>: line 27
[+] Service is running 127ms
[+] Docker.exe is in path 2.14s
Describing User has permissions to use Docker daemon
[+] docker.exe should not return access denied 42ms
Describing Windows container settings are correct
[-] Do not have DisableVSmbOplock set to 1 53ms
Expected: {0}
But was: {1}
66: $regvalue.VSmbDisableOplocks | Should Be 0
at <ScriptBlock>, <No file>: line 66
[+] Do not have zz values set 42ms
Describing The right container base images are installed
error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.25/images/json: open //./pipe/docker_engine: The system cannot find the file specified. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running.
[-] At least one of 'microsoft/windowsservercore' or 'microsoft/nanoserver' should be installed 129ms
ValidationMetadataException: The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.
ParameterBindingValidationException: Cannot validate argument on parameter 'Property'. The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.
at <ScriptBlock>, <No file>: line 90
Describing Container network is created
[-] Error occurred in Describe block 1.08s
RuntimeException: Cannot index into a null array.
at <ScriptBlock>, <No file>: line 119
Showing output from: docker info
Showing output from: docker version
Client:
Version: 1.13.0-dev
API version: 1.25
Go version: go1.7.3
Git commit: d8d3314
Built: Tue Nov 1 03:05:34 2016
OS/Arch: windows/amd64
Showing output from: docker network ls
Warnings & errors from the last 24 hours
Logs saved to C:\Projects\logs_20161107-084122.csv
C:\Projects>
Lii
11.6k8 gold badges65 silver badges88 bronze badges
asked Nov 7, 2016 at 6:46
8
The error is related to that part:
In the default daemon configuration on Windows, the docker client must
be run elevated to connect
-
First, verify that
Docker Desktop
application is running. If not, launch it: that will run the docker daemon (just wait few minutes). -
Then, if the error still persist, you can try to switch Docker daemon type, as explained below:
With Powershell:
- Open Powershell as administrator
- Launch command:
& 'C:\Program Files\Docker\Docker\DockerCli.exe' -SwitchDaemon
OR, with cmd:
- Open cmd as administrator
- Launch command:
"C:\Program Files\Docker\Docker\DockerCli.exe" -SwitchDaemon
answered Apr 6, 2020 at 15:00
vebenveben
19.9k14 gold badges61 silver badges80 bronze badges
15
Starting the docker daemon resolved the issue. Just search for docker by pressing the Windows key and clicking on «Docker Desktop». The daemon should be running in a minute.
After starting up Docker Desktop, make sure the docker daemon status in the bottom left is green and shows RUNNING when you hover over it.
ggorlen
46k7 gold badges78 silver badges111 bronze badges
answered May 7, 2020 at 4:46
Pradeep SanjeewaPradeep Sanjeewa
1,9661 gold badge14 silver badges25 bronze badges
3
You can run "C:\Program Files\Docker\Docker\DockerCli.exe" -SwitchDaemon
and point Docker CLI to either Linux or Windows containers. This worked for me.
Chloe
25.2k40 gold badges190 silver badges360 bronze badges
answered Mar 17, 2018 at 7:01
JdoeJdoe
8936 silver badges3 bronze badges
3
Error Code:
error during connect: Get
http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.29/version: open
//./pipe/docker_engine: The system cannot find the file specified. In the
default daemon configuration on Windows, the docker client must be run
elevated to connect . This error may also indicate that the docker
daemon is not running.
Solutions:
1) For Windows 7 Command Window(cmd.exe), open cmd.exe with run as administrator and execute following command:
docker-machine env --shell cmd default
You will receive following output:
SET DOCKER_TLS_VERIFY=1
SET DOCKER_HOST=tcp://192.168.99.100:2376
SET DOCKER_CERT_PATH=C:\Users\USER_NAME\.docker\machine\machines\default
SET DOCKER_MACHINE_NAME=default
SET COMPOSE_CONVERT_WINDOWS_PATHS=true
REM Run this command to configure your shell:
REM @FOR /f "tokens=*" %i IN ('docker-machine env --shell cmd default') DO @%i
Copy the command below and execute on cmd:
@FOR /f "tokens=*" %i IN ('docker-machine env --shell cmd default') DO @%i
And then execute following command to control:
docker version
2) For Windows 7 Powershell, open powershell.exe with run as administrator and execute following command:
docker-machine env --shell=powershell | Invoke-Expression
And then execute following command to control:
docker version
3) If you reopen cmd or powershell, you should repeat the related steps again.
answered Jun 14, 2017 at 6:54
javaseniorjavasenior
1,8062 gold badges24 silver badges26 bronze badges
4
If you see docker desktop is STOPPED or Not Running screen at left side bottom, then do following
- Open PowerShell with – Run as Administrator
- Close Docker Desktop if it is open
- Execute the following command on PowerShell
“&'C:\Program Files\Docker\Docker\DockerCli.exe' -SwitchDaemon”
- Open Docker Desktop, it will get started.
ggorlen
46k7 gold badges78 silver badges111 bronze badges
answered Apr 26, 2021 at 5:44
1
I know this question was long ago but I found no proper explanation and solution, so hopefully, my answer is useful
Assuming you install Docker Toolbox on Windows, both docker
and docker-machine
commands will be available. Often, people get confused when to use either of these.
The docker
commands are used only within a virtual machine to manage images. The docker-machine
commands are used on the host to manage the Linux VMs.
So, please use docker-machine
commands on your Windows machine. Use docker
command inside your VM. To use the docker
commands, for example, docker ps
, you either can open Docker Quickstart Terminal or run these on your cmd/bash/PowerShell:
docker-machine run default
/assuming default is your Linux VM/
docker-machine ssh default
This will start boot2docker and you will see the docker icon on the command line. Then you can use docker
commands.
Good luck
answered Mar 1, 2018 at 1:34
1
1.- Open the location of the shortcut:
2.- Right click and properties and add «-SwitchDaemon» to destiny
3.- Give administrator permissions, advanced options:
4.- Restart windows.
answered May 28, 2021 at 20:46
For me on Windows 11, editing %APPDATA%\Docker\settings.json
to the following values and then restarting Docker Desktop did the trick (I am using WSL2, not Hyper-V):
answered Feb 11, 2022 at 18:20
ayunami2000ayunami2000
4416 silver badges10 bronze badges
Try resolving the issue with either of the following options:
Option A
Start-Service "Hyper-V Virtual Machine Management"
Start-Service "Hyper-V Host Compute Service"
or
Option B
-
Open «Window Security»
-
Open «App & Browser control»
-
Click «Exploit protection settings» at the bottom
-
Switch to «Program settings» tab
-
Locate «C:\WINDOWS\System32\vmcompute.exe» in the list and expand it
-
Click «Edit»
-
Scroll down to «Code flow guard (CFG)» and uncheck «Override system settings»
-
Start vmcompute from powershell «net start vmcompute»
-
Then restart your system
KyleMit♦
30.6k67 gold badges463 silver badges666 bronze badges
answered Jul 17, 2019 at 4:24
MayankGaurMayankGaur
95711 silver badges22 bronze badges
2
I got the same error for Docker version 19.03.12 and Windows 10. Resolved it by going through the below steps. Hope it helps others.
- Go to Windows Start -> Search Box (Type here to search). There
enter ‘Services‘. Among the listed items, click Services app. - Now search ‘Docker Desktop Service‘ in the Services window opened. Right click on it and Start the service. Its status should be changed to ‘Running‘.
- If step 2 gives error like ‘the dependency service failed to start‘, then start all dependency services. For me, I had to start a service called ‘Server‘.
- Double click ‘Docker Desktop‘ icon in desktop. Now you will see ‘Docker Desktop is running‘ in system tray.
- Now run the command ‘docker version‘ from Command Prompt or PowerShell. It should give clean output.
- If any issue in step 5, run Command Prompt or PowerShell as administrator.
Above resolution assumes Docker is already installed and Hyper-V / Virtualization is enabled in your system.
answered Sep 4, 2020 at 16:33
RLDRLD
1,9173 gold badges15 silver badges20 bronze badges
2
I had the same issue in the terminal right after installation of Docker Desktop 4.7.1 running with WSL 2 backend. The tray whale icon was not showing either.
In my case the problem was that I already had a WSL distribution (Ubuntu) installed before and it has been the default. Docker Desktop with WSL 2 backend installs its own distribution called docker-desktop. And it has to be the default one (at least if not configured elsewhere).
So I had to run this command in PowerShell: wsl --setdefault docker-desktop
and restart docker services. Found the solution here.
answered Apr 30, 2022 at 14:43
ivangretskyivangretsky
3082 silver badges9 bronze badges
0
I have faced same issue, it may be issue of administrator, so followed below steps to setup docker on
windows10
.
- Download docker desktop from docker hub after login to docker.
Docker Desktop Installer.exe
file will be downloaded. - Install
Docker Desktop Installer.exe
usingRun as administrator
-> Mark windows container during installation else it will only install linux container. It will ask for Logout after logging out and login it shows docker desktop in menu. - After install, go to -> computer management -> Local users and groups -> Groups -> docker-user -> Add user in members
- Run docker desktop using
Run as administrator
- Check docker whale icon in Notification tab
- run command >docker version
Successfully using docker without any issue.
answered Nov 27, 2019 at 7:03
1
if you are in windows try this
docker-machine env --shell cmd default
@FOR /f "tokens=*" %i IN ('docker-machine env --shell cmd default') DO @%i
for testing try
docker run hello-world
answered Jan 26, 2018 at 13:09
RahulGRahulG
1,0281 gold badge15 silver badges27 bronze badges
If you have installed docker on Windows 10 Pro with Hyper-V enabled and you are still not able to run Docker on Windows 10, then, as the error suggests, your docker daemon is not started.
The following steps helped me to start docker successfully:
-
Use command on cmd(Admin mode)
docker-machine restart default
-
Then you’ll get a message something like:
open
C:\User\\{User_name}\\.docker\machine\machines\default\config.json
:
The system cannot find the file specified. -
Go to the docker icon which will be on your windows tray (bottom right corner of the desktop)
-
Right click on the docker icon > Settings > Reset > Restart Docker
It will take few moments
-
Then you’ll see the following message:
Docker is running with the green indicator
Note: If you already had Docker containers running on your system, then don’t follow these steps. You may lose the existing containers.
KyleMit♦
30.6k67 gold badges463 silver badges666 bronze badges
answered May 27, 2018 at 5:00
1
Reason : one reason may cause because we shut down the vmmem by command
wsl --shutdown
Solution : Simple Restart the Docker by right-clicking will fix the problem.
answered Mar 23, 2021 at 9:01
mabdullahsemabdullahse
3,59425 silver badges23 bronze badges
3
The same issue arrived when I started with the docker in windows 10. I was able to run docker --version
successfully but failed when I tried to run docker pull docker/whalesay
.
I tried many things suggested in the answers over here but my issue was resolved when I followed the below steps:
1 . Search for docker in windows and run docker desktop as administrator.
2 . Check the bottom-left docker symbol it should be green if the docker is running.
3 . If it’s not running first install «wsl_update».
4 . Open the docker desktop and sign in with your docker credentials, when you are logged in you can see the server restarting and the bottom left logo turns green.
5. To check whether docker is running or not open PowerShell as administrator and run docker run hello-world
.
answered Apr 9, 2021 at 4:57
raven404raven404
1,0499 silver badges14 bronze badges
1
For me the issue was virtualization was not enabled.
On windows 10: Go to task manager -> Performance -> CPU and you should see as section as «Virtualization : Enabled»
If you do not see this option, it means that virtualization has not been enabled.
Another interesting thing to note is you must have Hyper V enabled. However as I was using parallels desktop, I had to enabled to «Nested Virtualization» for Hyper V to be «truly enabled». So if your windows is a VM, check out the settings for Parallels (or whatever you’re using) that nested virtualization is enabled.
answered Apr 30, 2017 at 13:50
Prasanth LouisPrasanth Louis
4,6682 gold badges34 silver badges47 bronze badges
I was getting same errors after an install on Windows 10. And I tried restarting but it did not work, so I did the following (do not recommend if you have been working in docker for awhile, this was on a fresh install):
1) Find the whale in your system tray, and right click
2) Go to settings > Reset
3) Reset to factory defaults
I was then able to follow the starting docker tutorial on the website with Windows 10, and now it works like a charm.
answered Jun 8, 2018 at 0:12
celacela
2,3733 gold badges21 silver badges43 bronze badges
2
Open C drive in powershell Or Git bash and run below command
.\Program Files\Docker\Docker\DockerCli.exe -SwitchDaemon
answered May 26, 2020 at 7:21
Amit KumarAmit Kumar
1,56314 silver badges11 bronze badges
0
My solution was pretty simple. I noticed that docker was running linux containers instead of windows containers. What i did is switch to windows containers by right clicking on the docker icon in the system tray and choosing Switch to Windows Containers.
answered Dec 13, 2020 at 10:59
briancoderbriancoder
1591 silver badge9 bronze badges
Delete the folder under %appdata%\Docker
as indicated in Github issues
For quick access press Ctrl+R, paste «%appdata%\Docker» then Enter, it should open a folder located in AppData\Roaming\Docker (e.g. C:\Users\YourUsername\AppData\Roaming\Docker)
answered Feb 11, 2022 at 10:39
KarobweKarobwe
3262 silver badges6 bronze badges
I am using Windows 7 with Docker Toolbox and to fix it just open
Docker Quickstart Terminal.
$ docker version Client: Version: 17.05.0-ce API version: 1.29
Go version: go1.7.5 Git commit: 89658be Built: Fri May 5
15:36:11 2017 OS/Arch: windows/amd64Server: Version: 17.05.0-ce API version: 1.29 (minimum version
1.12) Go version: go1.7.5 Git commit: 89658be Built: Thu May 4 21:43:09 2017 OS/Arch: linux/amd64 Experimental: false
answered Jun 7, 2017 at 19:07
XelianXelian
16.8k25 gold badges99 silver badges152 bronze badges
1
I had the same issue lately. Problem was Security Software(Trendmicro) was blocking docker to create Hyperv network interface. You should also check firewall, AV software not blocking installation or configuration.
answered Jun 28, 2018 at 12:55
haltunbayhaltunbay
6156 silver badges15 bronze badges
0
For me the error was resolved by stopping a virtual Ubuntu instance that’d been running in Hyper-V:
The system cannot find the file specified. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running.
Once Ubuntu instance had been stopped, and Docker Desktop had been restarted, my usual docker commands ran just fine.
PS: I had the idea to try this because of an Error Log that Docker Desktop had helpfully compiled and offered to send to Docker Hub as user feedback… the log appeared to indicate that my machine was short on RAM, and Docker was failing for this very simple reason. Killing the Ubuntu instance solved that.
answered May 22, 2019 at 10:39
olisteadmanolisteadman
4426 silver badges12 bronze badges
If none of the other answers work for you, try this:
Open up a terminal and run:
wsl -l -v
If you notice that there’s a docker-desktop left hanging in the ‘Installing’ state, close Docker, run powershell as adminstrator and unregister docker-desktop:
PS C:\WINDOWS\system32> .\wslconfig.exe /u docker-desktop
Restart docker and hopefully it works. If it doesn’t, try uninstalling docker first, then unregistering docker-desktop, and re-installing Docker.
Source: https://github.com/docker/for-win/issues/7295#issuecomment-645989416
answered Jun 27, 2020 at 2:24
DaveDave
696 bronze badges
One of my friends was having a similar issue, we tried this and it worked.
Hyper-V, despite being listed under «Turn Windows features on or off» as being active, was not in fact active. This became apparent when running systeminfo under PowerShell, and seeing
that the requirements were listed as met (which is not the output you would expect were Hyper-V actually running).Steps:
- Open «Turn Windows features on or off»
- If you are not sure how to do this please refer
https://www.howtogeek.com/250228/what-windows-10s-optional-features-do-and-how-to-[turn-them-on-or-off/][1] - Turn Hyper-V off (uncheck box, making sure all sub-components are marked as off)
- Hit «Ok» — and your machine will reboot.
- When your computer starts up again, open «Turn Windows features on or off» and turn Hyper-V back on. Your machine will reboot again.
Now you can test by running docker hello-world image.
answered Oct 14, 2020 at 8:56
After installing docker desktop into your pc (windows one). You may find up this location. What is actually does,? It starts the Docker Daemon via your CLI
"C:\Program Files\Docker\Docker\DockerCli.exe" -SwitchDaemon
Smart Manoj
5,2504 gold badges34 silver badges59 bronze badges
answered Oct 27, 2020 at 20:40
3
That’s worked for me on win10-home https://github.com/docker/for-win/issues/11967
- Shutdown your service docker
- Now execute this into the window command terminal
RMDIR /S %USERPROFILE%\AppData\Roaming\Docker
- Startup your service docker
- Now click on your «Docker Desktop»
The «Docker Desktop» will now runnig … done …
answered Oct 27, 2021 at 21:24
udolineudoline
1211 silver badge3 bronze badges
1
I am not able to start the Docker container in Microsoft Windows 10 profession. As I found the cause of this error is due to the docker engine is failing to start.
After installing docker I am able to run only the docker version command.
-> docker —version
As I found the error which is showing docker daemon is not running in windows while running any other docker commands on CMD.
I also enabled (checked) the Hyper-V option in «Turn Windows features on or off» in the Control panel -> Programs -> Turn Windows features on or off.
asked May 5, 2021 at 18:22
user3552342user3552342
6571 gold badge5 silver badges14 bronze badges
The error is related to the daemon part:
In the default daemon configuration on Windows, the docker client must be run elevated to connect.
We can switch the Docker daemon as an elevated user in order to run the docker daemon in the Windows professional:
Run below command with Windows Powershell as administrator:
Run the PowerShell command: —
& 'C:\Program Files\Docker\Docker\DockerCli.exe' -SwitchDaemon
OR
You can run the below command on CMD as administrator:
Run the CMD command: —
"C:\Program Files\Docker\Docker\DockerCli.exe" -SwitchDaemon
SkyWalker
28.4k14 gold badges74 silver badges132 bronze badges
answered May 5, 2021 at 18:34
user3552342user3552342
6571 gold badge5 silver badges14 bronze badges
3
My Docker Desktop failed to start after I forced it to exit while updating (it stuck during the update that’s why I had to do it). No solution on the Internet helped me until I ran into this Powershell command:
wsl -l -v
It listed the following:
* Ubuntu-18.04 Stopped 2
docker-desktop Uninstalling 2
docker-desktop-data Stopped 2
It kept saying «Uninstalling» even after rebooting the whole system.
What I did was:
wsl -t docker-desktop
It terminated docker-desktop and made the problem gone.
answered Sep 15, 2022 at 15:17
vladikvladik
1311 silver badge2 bronze badges
1
delete %appdata%\Docker\settings.json and let Docker to create a new one
answered Dec 13, 2021 at 9:01
Ankit KumarAnkit Kumar
3335 silver badges10 bronze badges
1
You should check WSL:
Execute "wsl -l -v"
at the command prompt.
If the result is like this:
Then execute "wsl --shutdown"
on the command line.
Then execute "wsl -l -v"
, you will see:
Then start Docker Desktop.
This solved my problem.
tripleee
176k34 gold badges275 silver badges318 bronze badges
answered Mar 2, 2022 at 4:16
3
Make sure to download the Linux Kernel Update Package and then try restarting Docker Desktop.
Download from here
answered Nov 1, 2021 at 19:34
Just share my experience how I solved the problem with «docker failed to start» or similar problem. I found some mess with my Win10 Home edition, despite the fact that all checkes regarding Hyper-v, wsl and others passed I got failed to start docker engine. So, I tried to install one of the old version (4.4.4), not the newest one. An voila it installed wsl2 and started without any problems!
Hope this could help someone who’s tried all solutions (for example, deletion of the %appdata%\docker folders)
answered Oct 18, 2022 at 21:23
1
I was getting the same exact issue and a solution was provided from thread The attempted operation is not supported for the type of object referenced.» error after Windows Update fixed my problem. I had tried everything before this solution. To keep it simple just follow the below steps —
- Copy below snippet
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock2\Parameters\AppId_Catalog\0408F7A3]
«AppFullPath»=»C:\Windows\System32\wsl.exe»
«PermittedLspCategories»=dword:80000000
- Save it as a file wsl.reg
- Execute the file to update the wsl registry
- restart docker desktop
these steps are basically done to do some changes in the registry of wsl distribution that is installed standalone or by docker.
answered Sep 22, 2022 at 7:01
Rajan ChauhanRajan Chauhan
4612 gold badges7 silver badges18 bronze badges
Using PowerShell gave me a right direction. All restarts and re-install with deletion didn’t work.
wsl -l -v
showed list of three processes but wsl -t docker-desktop
responded with «There is no distribution with the supplied name.» only. wsl --shutdown
either didn’t work.
Solution is next door wsl --unregister docker-desktop
. After this all went fine.
answered Nov 20, 2022 at 15:25
Mike MenkoMike Menko
8198 silver badges9 bronze badges
I ran the following command which resolved the issue for me.
wsl --unregister docker-desktop
answered Jan 12 at 12:29
Amuk SaxenaAmuk Saxena
1,5214 gold badges18 silver badges44 bronze badges
I had also faced the same error. but for me, I fixed this by following steps.
-> Quit your docker desktop completely.
-> Restart your system if possible ( optional ).
-> Run docker desktop app with admin rights.
answered Jul 17 at 15:13
Issue
Docker Desktop will not start after Install or an upgrade with an error Docker engine failed to start.
Docker Desktop version: 3.5.1 (66501)
Windows Version: Windows 10 20H2
Opening Docker Desktop will start with this state
After sometime it will get into this state
Error Details
The possible error screens and messages. Typically it comes as a pop-up when the Docker fails.
Docker.ApiServices.StateMachines.InvalidTransitionException:
Cannot stop from an unstable state at Docker.ApiServices.StateMachines.UnstableState.Docker.ApiServices.StateMachines.IInternalEngineState.BeginStopAsync() in C:\workspaces\PR-16070\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\UnstableState.cs:line 36
at Docker.ApiServices.StateMachines.EngineStateMachine.d__15.MoveNext() in C:\workspaces\PR-16070\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\EngineStateMachine.cs:line 78
— 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.d__26.MoveNext() in C:\workspaces\PR-16070\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\Engines.cs:line 264
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.************** Exception Text **************
System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at Docker.Core.Cmd.Run(String filename, String arguments) in C:\workspaces\PR-16070\src\github.com\docker\pinata\win\src\Docker.Core\Cmd.cs:line 36
at Docker.Backend.Processes.WindowsDockerDaemon.TryToStartService(Settings settings, String args, Dictionary2 env) in C:\workspaces\PR-16070\src\github.com\docker\pinata\win\src\Docker.Backend\Processes\WindowsDockerDaemon.cs:line 200 at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass6_1.<GetExecutor>b__0(Object instance, Object[] methodParameters) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary
2 arguments, CancellationToken cancellationToken)
— 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.d__1.MoveNext()
Analysis
Tried following the steps to fix the issue
- Restart Docker Desktop that helps most of the time
- Windows reboot, welcome to the world of Microsoft
- Next uninstall, Reboot and Re-Install Docker Desktop (This cleared all the image cache)
None of the steps helped solving the issue. I started investigating the logs and the two windows services responsible for the docker to function properly. This could be verified by executing services.msc from windows run prompt.
I noticed the Docker Engine services missing and I picked up the service details from a working machine. I have listed for reference.
- «C:\Program Files\Docker\Docker\com.docker.service»
- «C:\P/r/ogram Files\Docker\Docker\resources\dockerd.exe» —run-service —service-name docker -G docker-users —config-file C:\ProgramData\DockerDesktop\tmp-d4w\daemon.json
Opened a powershell window and tried to execute the second service mentioned above and it threw an error the panic.log file access is denied.
I opened the log file and noticed similar access denied error.
Solution
Method 1
Open the following path in run prompt %ProgramData%/Docker and I renamed the panic.log file name to panic_old.log and tried opening the Docker desktop that will fix the issue.
Method 2
Do method one and try to execute the command in powershell and then open the Docker Desktop.
«C:\Program Files\Docker\Docker\resources\dockerd.exe» —run-service —service-name docker -G docker-users —config-file C:\ProgramData\DockerDesktop\tmp-d4w\daemon.json
Method 3
This issue is specific to version 3.6 where they fixed a vulnerability.
Remove the read only flag for the panic.log file in the following location %ProgramData%/Docker.
Ref:
https://nvd.nist.gov/vuln/detail/CVE-2021-37841
The issue might reappear after a system reboot. Delete the panic.log file and startup again. I will post if I find a permanant solution.
Update 9/7/2021:
Relase 4.0 has fixed the access issue.
Fixed a bug when switching from Linux to Windows containers due to access rights on panic.log
https://docs.docker.com/desktop/windows/release-notes/
Credits
Thanks for sharing their issue and possible fixes.
https://sitecorechat.slack.com/archives/C5VQ5SVKJ/p1629125020133400
https://twitter.com/longhorntaco
https://twitter.com/maartenwillebr1
https://twitter.com/techphoria414
https://stackoverflow.com/users/11822466/gskkc
Subscribe to Bala Blog (bala.one) | Sitecore MVP | Sitecore | OrderCloud | Coveo | Azure
Get the latest posts delivered right to your inbox
Opening Docker Desktop is more than a challenge for some users after installing the developer tool. This utility is known to simplify and accelerate workflow while giving the independence to innovate with your choice of tools, application stacks, and deployment environments for each project. But sadly Docker Desktop Starting forever issue may occur when you try to launch the tool on Windows.
Docker Desktop failed to start problem occurs on Windows 11 or 10 when you give an attempt to launch the tool. The app continuously shows “Docker Desktop is starting” message on the screen but never fully loads. Fortunately, you can solve this issue with the Developer’s tool using a few tricks. See – Fix Error Code 0x89240101 in Windows 11 or 10 (Solved!).
Here is how to fix Docker Desktop Starting forever error in Windows 11 or 10 –
Way-1: Switch to Windows container
During installation process, Docker Desktop doesn’t check whether an Operating System is Linux or Windows. However, the tool tries to look for Linux containers when starting that do not exist on your computer. Therefore, to deal with this problem, “Switch to Windows Containers..” first before launching the app using the following steps –
- Click on the System tray up arrow icon from the right side of Taskbar.
- Right click on the Docker Desktop icon.
- Select Switch to Windows Containers...
- A confirmation dialog box will prompt; click on Yes.
- Then close the app and launch it.
Way-2: Remove Windows Subsystem for Linux
Docker Desktop is prevented by Windows Subsystem for Linux from opening so you need to uninstall this feature then try to run and the app. Follow the steps –
- Press Windows and R.
- Type optionalfeatures and hit Enter.
- Find and uncheck – Windows Subsystem for Linux.
- Click on OK.
- After the uninstalling is completed, restart your PC.
- Open the Docker and follow the steps in Way-1.
Way-3: Uninstall the tool completely and then install running as administrator
To solve the problem, you need to uninstall Docker Desktop completely, delete the residue and leftovers and again download the app. Run the setup (Docker Desktop Installer.exe) as administrator for installation to successfully load this application. Here are the instructions:
- Press Windows and R keys.
- Type – appwiz.cpl.
- Hit – Enter.
- Right-click on Docker Desktop from Program and Features window and select Uninstall.
- On the User account control prompt, select Yes.
- When the “Uninstalling Docker Desktop” wizard shows Uninstalled successfully, click on Close.
- Then, go to C:\Users\username folder and delete the folder named .docker.
- Access – C:\Users\username\AppData\Local and delete – Docker.
- From C:\Users\username\AppData\Roaming, delete Docker.
- Restart the computer and download the app again.
- Right click on Docker Desktop Installer.exe and select – Run as administrator.
- Follow the guidelines and complete the installation.
Read – How to Remove Traces of Uninstalled Programs in Registry on Windows 11 or 10.
Way-4: Disable Docker at Startup
Multiple users report that Docker Desktop Starting forever problem occurs due to it being enabled at startup in Windows 11 or 10. Disabling the Startup from Settings app or the interface of the utility itself will fix this using below steps:
From the Docker desktop:
- Right-click on the whale icon from System tray.
- Select – Settings.
- In the General tab, uncheck Start Docker Desktop when you log in.
- Click on Apply & restart.
Through Settings app
- Press – Winkey+I.
- Select – Apps.
- On the next page, click on – Startup.
- Turn off the toggle switch for “Dock Desktop” in the list.
Way-5: Change Proxy Settings
Using proxy may also trigger Docker Desktop not starting forever and to solve this you will have to manually set configurations into the application.
- Click on Show hidden icon up arrow on the taskbar.
- Right-click on the “whale icon” and choose Settings.
- Once the app appears, select Resources.
- After the expansion of options, click on Proxies.
- Turn on Manual proxy configuration.
- Enter the information in the boxes and click Apply & restart.
Way-6: Use Windows PowerShell to fix Docker Desktop stuck on starting
Some customers briefed that Windowss PowerShell cmdlet helped them to resolve the issue by removing Hyper-V and reinstalling the same.
- Press – Widiws+S.
- Type – powershell.
- Click on – “Run as administrator”.
- Type the underneath cmdlet and press “Enter” –
Disable-WindowsOptionalFeature -FeatureName microsoft-hyper-v -online
- The computer will automatically restart after the removal, launch the Windows Powershell as administrator again and run the following command –
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
- Restart the computer and open Docker.
Way-7: End Task WSL and Visual Studio from Task Manager
Frequently, since running with Windows Subsystem for Linux mostly causes the message, ending task of WSL and Visual Studio from Task Manager may work for you so follow the steps –
- Press Ctrl+Shift+Enter.
- Once the Task Manager appears go to the Process list.
- Right-click on WSL and select – End task.
- In the same way, end task Visual Studio code.
- Right click on Docker Desktop and choose – End task.
- Launch the app.
Get help from – Multiple Tips to End Tasks and Processes on Windows 8.1 / 10
Methods:
Way-1: Switch to Windows container
Way-2: Remove Windows Subsystem for Linux
Way-3: Uninstall the tool completely and then install running as administrator
Way-4: Disable Docker at Startup
Way-5: Change Proxy Settings
Way-6: Use Windows PowerShell to fix Docker stuck on starting
Way-7: End Task WSL and Visual Studio from Task Manager
That’s all!!
Repair any Windows problems such as Blue/Black Screen, DLL, Exe, application, Regisrty error and quickly recover system from issues using Reimage.