我的场景是一台运行Windows的虚拟机,我在其中将docker与linux容器一起使用。
我的目的是启动一个sql server容器,我很难拥有持久数据。
我的问题是如何执行命令以及是否可以运行-v来将主机文件夹与容器链接的解释。
我已经读过here,但对不起我完全不了解。此外,码头工人文档也没有澄清。
我的尝试失败了:
docker create volume sql-data
docker run -v sql-data:C:/temp/
Error response from daemon: invalid mode: /temp/
我读到的是一个已知的错误,但是找不到解决方案,也找不到有关该错误的更新信息。
谢谢。
答案 0 :(得分:2)
您的问题已直接在docker文档see here中解决(我建议您完整阅读Mount volume
部分,这很短)。实际上,文档特别指出您的语法将不起作用。为了使命令生效,目标路径应为以下路径之一(来自同一链接):
不存在或空的目录;或C:以外的驱动器。进一步, 绑定安装的源必须是本地目录,而不是文件。
此外,文档指定:
在Windows上,必须使用Windows样式的语义指定路径。
将上面的语句应用于您的命令,它应该可以工作。我不是Windows专家,但我会尝试:
docker run -v sql-data:c:\emptyDir