Tag: named pipes

在Docker容器文件夹中的命名pipe道通过boot2docker挂载到mac os x文件系统

我正在使用Mac OS X上的boot2docker封装一些科学软件。而这个软件( https://github.com/voutcn/megahit.git )使用的是命名pipe道(在python代码中,但并不重要)将不同的部分(用C写)互相连接。 我从主机Mac OS X机器上安装临时文件夹,以便在Docker容器中提供临时区域(因为软件的临时输出可能很大),如下所示: docker run -v /external/folder:/tmp/scratch <image> <args> 它给了我这个容器内的挂载线: none on /tmp/scratch type vboxsf (rw,nodev,relatime) 并且在这个挂载的文件夹中,当它在容器中运行时,命名pipe道创build失败 它甚至与python,C或任何特定的语言都没有关系。 我mkfifo pipe1检查与Linux命令mkfifo pipe1在此文件夹中的错误: mkfifo: cannot create fifo 'pipe1': Operation not permitted 它适用于任何内部没有安装在容器内的文件夹。 为什么会发生,如何解决? PS:这是我很容易重现的问题。 1)带有boot2docker的Mac OS X 2)Dockerfile是: FROM ubuntu:14.04 #WORKDIR /tmp <- this one would work WORKDIR /tmp/scratch ENTRYPOINT [ "mkfifo" […]