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
Exception when calling docker daemon commands in Windows #27423
Comments
First time I've seen something even remotely close to this. How was the machine setup? Anything unique that could tie it down to some avenues of investigation? |
Nothing out of the ordinary. I installed Docker for Windows a while ago (when fist betas went out), while using Docker Toolbox till then. Everything worked fine, and after a pause of using docker (about a month or so) I tried it again and this exception is now thrown every time docker daemon is called by the docker client. The only thing I did in the meantime was installing Go 1.7.1 over the previous one (I think 1.6.2). As I noted in my initial comment, the issue isn't that remote seems like, it's been reported (with some variations) in a few places as well, not necessarily related to docker though. However with |
I can't see anything obvious. @jstarks in case I'm missing something. @clns Can you try an experiment and use TCP rather than the default named pipe - run the daemon manually I doubt what version of go you have installed is relevant - the docker binaries don't have any runtime dependency on go being installed. One other experiment - can you launch this from a Windows cmd command prompt, or Powershell rather than some form of cygwin/msys bash prompt to also rule those out. |
I have a similiar issue with error messages that look pretty much the same. I upgraded from a Windows 7 recently and would very much doubt, that I had any Go runtime environment installed (work PC and we don't use any Go) |
@donut87 Can you try the experiment suggestions above too please. |
I ran docker from Powershell and the "old" windows cmd. So I think we can rule this out. Using TCP is a thing I will try out soon. |
I tried it with TCP and I think we might have something here. First, let me say that I once again uninstalled docker, restarted the PC and re-installed it from docker.com (so I installed the stable version this time, I also tried it with the beta before). Same problem when running Now with the TCP method, here are the outputs: > net stop com.docker.service
The Docker for Windows Service service is stopping..
A system error has occurred.
System error 1067 has occurred.
The process terminated unexpectedly.
The Docker for Windows Service service was stopped successfully.
> & 'C:\Program Files\Docker\Docker\resources\dockerd.exe' -D -H tcp://127.0.0.1:2375
...
time="2016-10-20T15:47:30.865704300+03:00" level=info msg="API listen on 127.0.0.1:2375"
time="2016-10-20T15:47:30.865704300+03:00" level=debug msg="Config reload - waiting signal at Global\\docker-daemon-config-16572" And the client: > & 'C:\Program Files\Docker\Docker\resources\bin\docker.exe' -D -H tcp://127.0.0.1:2375 version
Client:
Version: 1.12.1
API version: 1.24
Go version: go1.6.3
Git commit: 23cf638
Built: Thu Aug 18 17:52:38 2016
OS/Arch: windows/amd64
Server:
Version: 1.13.0-dev
API version: 1.25
Go version: go1.7.1
Git commit: 76ee0e8
Built: Fri Sep 16 07:44:51 2016
OS/Arch: windows/amd64 the server says: time="2016-10-20T15:48:12.626134400+03:00" level=debug msg="Calling GET /v1.24/version"
time="2016-10-20T15:48:12.626134400+03:00" level=debug msg="Client and server don't have the same version (client: 1.12.1, server: 1.13.0-dev)" Apparently client and server are using different API versions, although I used the official installer. |
Unfortunately I cannot add information, I can only confirm the findings of @clns. |
I started a server using TCP and then tried to start docker again. When I now try to pull something (like ubuntu) I get this:
Or if I start to run like the getting started section suggests, I get this:
After I tried to install this mysterious "linux" with I can also attach logs from the server, if this helps. |
@donut87 if you're running Native Windows Containers, the images you pull / try to start, must be Windows based. The "ubuntu" image is a Linux OS image, so not available as a Windows image. Docker for Windows (https://docs.docker.com/docker-for-windows/) allows you to switch between "Native Windows Container", and "Linux Containers". Pick "Linux Containers" if your intent is to run Linux based images |
Any idea why the client and server API versions are different? |
@clns probably you installed the Docker daemon directly, and got the CLI from Docker for Windows or similar. You can override the CLI API version to get around the error.
|
@friism No, as you can see I'm running |
I am having exactly the same problem with running Docker on Windows 10. I just installed the latest version of Docker this morning and it still has the same problem. |
@KirkE31415 To be clear - which error. There's a few reading back. The original one or something else? If the original, please can you go through the request I posted earlier. |
jhowermsft, I'm getting the same as the original error. Attached is a snapshot of what I'm seeing. Also I am using Windows 10 Professional. I tried your suggested tests such as running the Docker daemon manually and then using the And I’ve always run docker from the Powershell, never from Cygwin
|
Same error here: syscall.Syscall(0x7ffd283bdc40, 0x2, 0x244, 0x3, 0x0, 0x254, 0x0, 0x0) goroutine 1 [select]: goroutine 5 [syscall]: goroutine 7 [select]: goroutine 9 [syscall, locked to thread]: Windows 10 |
I'm also receiving the error: OS: Windows 10 Enterprise -1607 - Build: 14393.321 I did have a pc a few weeks ago prior to the Windows 10 anniversary update. On my current machine, I just got, it came with the anniversary update in the image. After installing the latest stable version of docker for windows I get the errors on any daemon commands. Issue: syscall.Syscall(0x7fff8ca9dc40, 0x2, 0x260, 0x3, 0x0, 0x27c, 0x0, 0x0) goroutine 1 [select]: goroutine 5 [syscall]: goroutine 7 [select]: goroutine 9 [syscall, locked to thread]: |
the same error on my windows 10 enterprise edition Exception 0xc000001d 0x0 0x0 0x18000890d syscall.Syscall(0x7ffed157dc40, 0x2, 0x1d0, 0x3, 0x0, 0x1e4, 0x0, 0x0) goroutine 1 [select]: goroutine 5 [syscall]: goroutine 7 [select]: goroutine 9 [syscall, locked to thread]: |
Docker is now working for me since I installed the latest update for Windows |
@KirkE31415 thanks for reporting back and glad that it is working for you. @kapilprits @jlpyx @Rapdrei @clns @donut87 could you try Beta31 as well. You ca download it here: https://download.docker.com/win/beta/InstallDocker.msi |
@rneugeba Same issue with Beta31 on Windows 10 Pro - 10.0.14393 (Latest update) |
I have the same issue, no matter what command i run that interacts with the daemon then i get the following exception. I have tried to reinstall docker, disable/enable hyper-v, ran beta and stable channels, Windows is also fully updated (Windows 10 Pro, version: 1607, Build:14393.447) Docker version: 1.13.0-rc2-beta31 (9123) Update: tried beta 32 aswell, still the same issue `Exception 0xc0000005 0x1 0x4a9c404 0x180008910 syscall.Syscall(0x7ffbf7e5dc40, 0x2, 0x294, 0x3, 0x0, 0x0, 0x0, 0x298) goroutine 1 [select]: goroutine 18 [syscall]: goroutine 19 [select]: goroutine 33 [syscall, locked to thread]: |
Okay, so I decided to format my computer and everything is working now. I'm suspecting that it might have been virtualbox which I installed a few weeks ago, that might have caused the problems, but I'm not sure. |
@Eikc Don't think it's VirtualBox because I have not re-installed that after installing Docker Beta. Also I did everything you said in the previous comment, nothing works. At this point I cannot use Docker on Windows even with the |
Uninstalling WebCompanion fixed docker for me! Arghhhh... how annoying, I'd no idea it had installed in the first place! |
I had same issue, I opened powershelll as administration and run |
Uninstalling WebCompanion fixed Docker for me as well. |
Yes. Web Companion was the problem for me as well. I don't know how it even got on my system! |
Same here. Stopping Web Companion did the trick. |
Uninstalling WebCompanion fixed Docker for me as well. |
I do not install WebCompanion and the similar exception. C:\Users\asus>docker info syscall.Syscall(0x7ffa2d6bdc40, 0x2, 0x240, 0x3, 0x0, 0x0, 0x0, 0x250) goroutine 1 [select]: goroutine 18 [syscall]: goroutine 19 [select]: goroutine 33 [syscall, locked to thread]: |
@ZGreedy did you take a look at this link (from above)? In the More Information section, there are steps to determine which application is causing this failure, it could be any Layered Service Provider that incorrectly implements SetFileCompletionNotificationModes, not necessarily just WebCompanion. |
@darrenstahlmsft thinks a lot, i use the "netsh WinSock Show Catalog" command, and all the Service Flags is 0x2nnnnn. this problem still annoying me. |
Uninstalling WebCompanion fixed Docker on Windows 10 |
I deinstalled WebCompanion, but it didn't solved the problem. I also compared the currently latest stable and edge version, and there are different problems, which, however, probably are caused by the same one.
syscall.Syscall(0x7ff8168cdc40, 0x2, 0x248, 0x3, 0x0, 0x0, 0x0, 0x278) goroutine 1 [select]: goroutine 5 [syscall]: goroutine 17 [syscall, locked to thread]: Does it gives more information to find the problem? Does anybody have an idea? |
@deokl Did you take a look at this link to see if another application might be broken in a similar way to WebCompanion? Also, it looks like this comment has a link to a Go application to check what might be causing this as well. What is the output from that? I can't help with 1 or 2 as they seem to be a docker-for-win specific problems, which I don't have experience with. Though I suspect you are correct, and 1 is caused by the same underlying issue. As for 2, it doesn't seem related to me. You might have better luck with that in https://github.com/docker/for-win issues. @friism do you know who might be able to look at that part? |
@darrenstahlmsft Thank you for your hints and sorry for not answering for a longer time, I was kicked out from my work life by a longer illness. The first hint didn't get any results - it seems, that I have no non-IFS BSP or LSP installed. The Go application exits with error message cannot find package "golang.org/x/sys/windows". I will try my luck on https://github.com/docker/for-win. |
Closing. Almost all were webcompanion related issues. Please open a new issue if something new crops up. |
Actual behavior
Docker throws an exception everytime I run a command that accesses the daemon (e.g.
docker -v
works since it's client-side only).Information
Steps to reproduce the behavior
Things I tried
I tried re-installing docker, ran "Reset to factory defaults", restart, nothing worked, I get the same exception all the time.
Also tried switching from beta to stable and back to beta, nothing changes here as well.
I'm using PowerShell (with and without Administrator), and also tried cmd.exe, all the same.
Go - Windows issue
Apparently this is a Go - Windows issue, and it's actually reported in a few places like syncthing/syncthing#3432 golang/go#13541. I think this is related to
kernel32.dll
, and the problem is originating in Microsoft/go-winio:zsyscall.go#L88I encountered a similar Exception when I ran one of my own tools written in Go (using Cgo), but it only happened the first time. Second time (and then on) it worked without problems, unlike
docker
which fails every time the daemon is called by a client command.I originally reported this issue here docker/for-win#140 but, as noted, I added it here as well for tracking purposes.
The text was updated successfully, but these errors were encountered: