Docker in Docker(通过 Deamon 套接字)无法挂载主机卷

Docker in Docker (via Deamon socket) cannot mount host volume

我正在 运行 设置一个 windows host 并启动一个 linux 容器。在 linux 容器内,我希望能够在 windows host 上启动其他 docker 容器。 当我使用以下命令启动我的第一个 linux 容器(根据这篇文章:https://itnext.io/docker-in-docker-521958d34efd)时绑定挂载 docker 守护进程:

docker run -it --rm --name rqd07 --network=opencue-master_default -v /var/run/docker.sock:/var/run/docker.sock --volume F:/:/testVOLUME opencue/rqd 

在容器内安装 docker 后,我想执行以下命令:

docker run -it --rm -v F:/OPENCUE/debug_renderscripts/nuke/ABC_0000:/render nuke:12.0v2 nuke -t -F 1-10 -X Write1 /render/ABC_0000.nk

docker: Error response from daemon: invalid mode: /render

所以安装 windows 卷似乎有问题。但是,我认为 host 的那个 docker 守护进程只是通过套接字接收命令。当 运行 直接来自 host os 时,命令正确执行。当 运行ning 从容器内部移除卷挂载时,同样有效。

F:/OPENCUE/debug_renderscripts/nuke/ABC_0000:/render

windows 路径包含两个冒号,因此 docker 尝试像使用 readwrite 模式等一样使用渲染...

读一读: https://mattcbaker.com/posts/mounting-window-dir-docker/