在Windows上执行docker version命令返回的结果如下:

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.

运行诊断将产生以下结果:

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>

当前回答

如果您已经在启用Hyper-V的Windows 10 Pro上安装了docker,并且仍然不能在Windows 10上运行docker,那么,正如错误提示的那样,您的docker守护进程没有启动。

下面的步骤帮助我成功启动docker:

在cmd上使用命令(管理模式) docker-机器重启默认 然后你会收到这样一条消息: 用户打开C: \ \ \ {User_name} \ \ .docker \机\ \机器默认\ json: 系统无法找到指定的文件。 转到窗口托盘上的docker图标(桌面的右下角) 右键单击docker图标>设置>复位>重启docker 这要花点时间 然后你会看到下面的消息: Docker正在运行,指示灯为绿色

注意:如果您的系统上已经运行了Docker容器,那么请不要执行这些步骤。您可能会丢失现有的容器。

其他回答

在我的例子中,WSL2 Linux-Kernel丢失了,下载,执行并重新启动:

https://learn.microsoft.com/de-de/windows/wsl/wsl2-kernel

解决了问题。

在Windows 10机器上安装: 在安装搜索Windows功能之前,请先搜索并检查Windows hypervisor平台和Linux子系统

WSL 1或WSL 2的安装是强制性的,所以在docker提示您安装时安装它。

https://learn.microsoft.com/en-us/windows/wsl/install-win10

你需要从windows商店安装ubantu(版本16,18或20):

uhelp版本20

安装完成后,可以运行docker -version等命令 或docker在Linux终端运行hello-world。

本视频将帮助你: https://www.youtube.com/watch?v=5RQbdMn04Oc&t=471s

如果其他答案都不适合你,试试这个: 打开一个终端并运行:

wsl -l -v 

如果你注意到Docker -desktop仍然挂在“Installing”状态,关闭Docker,以管理员身份运行powershell并注销Docker -desktop:

PS C:\WINDOWS\system32> .\wslconfig.exe /u docker-desktop

重新启动docker,希望它能工作。如果没有,尝试先卸载docker,然后注销docker-desktop,重新安装docker。

来源:https://github.com/docker/for-win/issues/7295 # issuecomment - 645989416

在安装docker桌面到您的pc (windows一)。你可以找到这个地方。到底是什么?它通过CLI启动Docker Daemon

"C:\Program Files\Docker\Docker\DockerCli.exe" -SwitchDaemon

您需要管理员权限来运行该服务

我也遇到过类似的问题。当我运行命令提示符(以管理员身份运行)并输入“docker版本”时,问题就消失了。

C:\WINDOWS\system32>docker version


Client: Docker Engine - Community
 Version:           19.03.8
 API version:       1.40
 Go version:        go1.12.17
 Git commit:        afacb8b
 Built:             Wed Mar 11 01:23:10 2020
 OS/Arch:           windows/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.8
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.17
  Git commit:       afacb8b
  Built:            Wed Mar 11 01:29:16 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683