Docker Enterprise daemon dies with "Windows named pipe error" during docker-compose up --build

7.2k Views Asked by At

I'm running Docker Enterprise on Windows Server 2016 (version 1607). When I run docker-compose up -d --build, Docker begins building my project, but then fails after the first set of downloads is complete with this error:

Step 1/4 : FROM microsoft/dotnet:2.1-sdk-nanoserver-1803
2.1-sdk-nanoserver-1803: Pulling from microsoft/dotnet
e46172273a4e: Download complete
1f7d468f830c: Download complete
49e2df75adc8: Download complete
5bf149b5ccf5: Download complete
8b3ace20105f: Download complete
c17187292dad: Download complete
501949accc8a: Download complete
f87c5e7b5f65: Download complete
ERROR: Windows named pipe error: The pipe has been ended. (code: 109)

After this happens, all other docker commands fail as the daemon has stopped running. I can verify this by taking a look in the Services window:

enter image description here

I have to manually restart the Docker service before I can execute any more docker commands.

Why is this happening and how can I fix it?

Here's the output from docker version:

PS C:\> docker version
Client:
 Version:      17.10.0-ee-preview-3
 API version:  1.33
 Go version:   go1.8.4
 Git commit:   1649af8
 Built:        Fri Oct  6 17:52:28 2017
 OS/Arch:      windows/amd64

Server:
 Version:      17.10.0-ee-preview-3
 API version:  1.34 (minimum version 1.24)
 Go version:   go1.8.4
 Git commit:   b8571fd
 Built:        Fri Oct  6 18:01:48 2017
 OS/Arch:      windows/amd64
 Experimental: true
2

There are 2 best solutions below

0
On BEST ANSWER

I've made two changes, and now I am no longer getting this error:

  1. I realized I was using an experimental Docker version (17.10.0-ee-preview-3), so I rolled back to 17.06.2-ee-16.
  2. I learned the that version of Windows Server used by the host machine dictates which versions of Windows Server you can use inside a container. See here: https://learn.microsoft.com/en-us/virtualization/windowscontainers/deploy-containers/version-compatibility. My containers now use a version of Windows Server that matches the version of my host.

I think point #1 above was the key.

0
On

I have the same error after rebooting windows. I wait a couple minuts and get the message that "docker-descktop is running". Now run the command and everythink works fine.