在Docker中的已装载卷中写入访问权限

时间:2019-06-12 05:47:38

标签: windows docker

我在docker ubuntu容器中安装了一个文件夹

docker  run -it --rm -v ${pwd}:/files ubuntu /bin/bash

但是当我尝试写入挂载的文件夹时出现错误

root@0974e91f50ec:/files# cat >a.txt
bash: a.txt: Permission denied

是否可以写入安装的文件夹?

1 个答案:

答案 0 :(得分:0)

我刚刚尝试了您的示例。这是我在Windows机器上运行的内容。 enter image description here

文件看起来不错。

enter image description here

它们在主机系统中也可以正常显示(我在主机上创建了b.txt,以检查容器中它是否显示正常)。

enter image description here

PS :您需要注意的是,在Windows上,至少使用public class MyClass() { private IProdCalcService calcService; public MyClass(IProdCalcService calcService) { this.calcService = calcService; } public void IamMethodInBll() { //... prodSurr.CalculatedPrice = calcService.GetMyMethod(); //... } } 时,您只能挂载非常特定的目录(例如~/Documents目录)(不确定关于Docker toolbox)。我认为要从其他目录挂载文件夹,还有很多工作要做。因此,最好确保要尝试挂载的所有内容实际上都是Windows上的Docker允许的。