gpt4 book ai didi

docker-volume - 无法将卷标志与 Windows 容器一起使用

转载 作者:行者123 更新时间:2023-12-04 03:45:44 26 4
gpt4 key购买 nike

我正在尝试以与在 linux/mac 上通过 -v "$(pwd)":/code 轻松完成的方式相同的方式将主机文件夹映射到 guest 。我想不出一个简单的例子来使它与 Windows 容器一起工作。

docker build -t="webdav" .
docker run --rm -it -v C:\junk:C:\code --name webdav webdav powershell


C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: container f0fa313478fddb73e34d47699de0fc3c2a3bdb202ddcfc2a124c5c8b7523ec09 encountered an error during Start: failure in a Windows system call: The connection with the Virtual Machine hosting the container was closed. (0xc037010a).

我尝试了无数其他变体,并接受了答案 here给出相同的错误。

docs似乎只指Docker Toolbox。这个例子只给我 invalid bind mount spec

我的 Dockerfile

FROM microsoft/windowsservercore

RUN powershell -Command Add-WindowsFeature Web-Server

RUN powershell -Command mkdir /code

WORKDIR /code
ADD * /code/

操作系统名称:Microsoft Windows 10 Pro操作系统版本:10.0.14393 N/A Build 14393

版本 17.03.1-ce-win5 (10743) channel :稳定b18e2a5

免责声明:我最初将此发布在 docker forums 上但没有任何回应。

最佳答案

编辑:找到了。 https://docs.docker.com/engine/reference/builder/#volume“使用基于 Windows 的容器时,容器内卷的目的地必须是以下之一:不存在或空目录;或 C: 以外的驱动器”

或在这里:https://docs.docker.com/engine/reference/commandline/run/#mount-volume--v---read-only“当使用基于 Windows 的容器时,以下示例将失败,因为容器内的卷或绑定(bind)安装的目标必须是以下之一:不存在或空目录;或 C: 以外的驱动器。此外,绑定(bind)安装的源必须是本地目录,而不是文件。”

让我印象深刻的是,这些是记录这种差异的不明显的地方。您在哪里查找有关此问题的文档?我会在那里添加这个:)

是否普遍需要总结 Linux 和 Windows 之间的差异?

旧答案(上下文)以下是使用 GUI 安装卷的分步指南: https://rominirani.com/docker-on-windows-mounting-host-directories-d96f3f056a2c

通过阅读其他一些论坛帖子,听起来密码中的特殊字符可能会出错。

如果您仍然遇到问题,可以阅读以下主题: https://github.com/docker/docker/issues/23992

希望这对您有所帮助!

关于docker-volume - 无法将卷标志与 Windows 容器一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43335357/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com