泊坞窗中的安装卷中的权限被拒绝

我使用docker-compose从docker容器中的本地主机上挂载一个卷(添加volumes条目id docker-compose.yml)

这工作得很好,但是当我尝试运行py.test时,我得到权限错误:

OSError: [Errno 13] Permission denied: '/foo/bar/.coverage'

另外,当我尝试创build.coverage目录时,我login到容器我得到:

 mkdir .coverage mkdir: cannot create directory '.coverage': Permission denied 

任何想法如何解决这个问题?

只要Docker本身具有正确的权限,您就可以在Docker容器中执行任何操作(如卷装)。 你应该使用以下命令来执行你的容器

docker exec -it -u 0 Container_NAME / bin / bash

然后执行py.test,我只是希望你不要对py.test中的某个用户执行su操作

这可能是由于该目录上的文件上下文,请尝试将其更改为“沙箱”文件:

 chcon -Rt svirt_sandbox_file_t /foo/bar/ 

得到了同样的问题,并通过在我的testing包(foo / bar /在你的情况下)的根文件夹中在我的Dockerfile中添加一个chmod -R 777 (适应777到你的权限,但你需要一个读/写)来修复它。 我做了recursion,因为我在我的子文件夹中运行我的testing覆盖率。