/var/run/docker.sock 如何为 Windows Docker 工作?

O. *_*dze 6 windows docker docker-compose docker-volume docker-container

我的 Windows 操作系统上安装了 Docker。有我的 docker-compose.yml 卷文件:

volumes:
  - "/var/run/docker.sock:/var/run/docker.sock"
Run Code Online (Sandbox Code Playgroud)

我只是无法弄清楚/var/run/docker.sock::/var/run/docker.sockWindows 的路径是如何工作的,因为/var/run/我的 Windows 文件中没有可以找到 docker.sock 的文件。那么这个卷绑定是如何工作的呢?

BMi*_*tch 6

/var/run/docker.sockDocker for Mac 和 Windows for Linux 映像上的文件位于 Docker 用于运行 Linux 容器的 VM 中。这些卷挂载发生在 VM 内部到 VM 中运行的容器。这也是为什么如果您尝试将卷挂载运行到尚未与嵌入式 VM 共享的目录时,您会得到一个空目录的原因。

您无法直接从 Windows 环境中看到此文件(至少我不知道),尽管您可以将其安装到容器中并以这种方式查看。

有关如何创建此 VM 的更多详细信息,您可以查看 LinuxKit 项目:https : //github.com/linuxkit/linuxkit