在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>

当前回答

我有这个问题,当我试图创建MySQL映像使用命令行

为了解决这个问题,我只是等待Docker桌面应用程序启动并正确运行,然后我再试一次。


其他回答

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

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

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

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

对我来说,问题是虚拟化没有启用。

在windows 10上:进入任务管理器->性能-> CPU,你应该看到“虚拟化:已启用”部分

如果您没有看到此选项,则意味着尚未启用虚拟化。

另一个要注意的有趣的事情是你必须启用Hyper V。然而,当我使用并行桌面时,我必须启用“嵌套虚拟化”,以使Hyper V“真正启用”。因此,如果您的windows是一个虚拟机,请检查Parallels(或任何您正在使用的)的设置,以启用嵌套虚拟化。

我遇到过这样的问题几次,但每次都是因为我没有启动docker。 要解决这个问题,只需打开docker并等待它完成启动。

我使用Windows 7与Docker工具箱和修复它只是打开 Docker快速入门终端。

客户端:版本号:17.05.0-ce API版本号:1.29 Go版本:go1.7.5 Git提交:89658be构建:周五5月5日 15:36:11 2017 OS/Arch: windows/amd64 Server: Version: 17.05.0-ce API Version: 1.29(最低版本) 1.12) Go版本:go1.7.5 Git commit: 89658be build: Thu May 4 21:43:09 2017 OS/Arch: linux/amd64 Experimental: false

您也可以使用自诊断工具

Docker Desktop包含一个自我诊断工具,可以帮助您识别一些常见问题。运行自诊断工具前,请先找到com.docker. diagnostic .exe。通常安装在C:\Program Files\Docker\Docker\resources\ com.docker. diagnostic .exe中。

在Powershell中运行自诊断工具。

& "C:\Program Files\Docker\Docker\resources\com.docker.diagnose.exe" check

该工具运行一套检查,并在每个检查旁边显示PASS或FAIL。如果有任何失败,它会在最后突出最相关的部分。

然后执行以下命令

& 'C:\Program Files\Docker\Docker\DockerCli.exe' -SwitchDaemon