4

I am trying to use named pipes for inter-process communication inside a docker container but am getting "not found" errors when trying to read/write. Does docker for windows support named pipes? The software's been released and I know it works fine in VMs. I just can't find anything saying yes or no that containers on windows support named pipes.

I've got an IIS application with a named pipe binding installed inside the container along with a client application also inside the container trying to communicate via net.pipe://localhost. My run command looks like this

docker run -it -m 2GB -p 80:80 --network External company/appserver

The error message is

The pipe endpoint 'net.pipe://localhost/WCFSvc/WCF.svc' could not be found on your local machine

sirdank
  • 3,351
  • 3
  • 25
  • 58
  • 1
    Can you...maybe share an example of exactly what you're trying to do? And the specific code you're running, and the exact error messages that result? – larsks Dec 13 '17 at 20:21
  • @larsks I didn't feel like that is relevant because I'm using released software that I know works. I just want to know if there is an official declaration that docker for windows does not support named pipes. – sirdank Dec 13 '17 at 20:25
  • " I didn't feel like that is relevant ". I'm afraid you're mistaken. Support (or not!) for named pipes has very little to do with Docker itself and has much more to do with exactly how you are starting your containers and where you are locating your named pipes. – larsks Dec 13 '17 at 20:26
  • @larsks Details added. – sirdank Dec 13 '17 at 20:28

1 Answers1

2

You can mount named pipes into Docker containers, but this only works on Windows Server 1709 and later. I put an example in my blog post: https://blog.docker.com/2017/09/docker-windows-server-1709/

docker run -d -p 8080:8080 -v \\.\pipe\docker_engine:\\.\pipe\docker_engine friism/jenkins
friism
  • 19,068
  • 5
  • 80
  • 116