pipe理通过Docker容器的卷在主机上创build的文件的selinux上下文

我运行了Fedora 20(docker 1.0.0)上的fig python / django教程,但是当django-admin.py尝试创build项目文件时,它在SELinux中失败并触发AVC拒绝。

我查看了这个策略,我可以看到,在我的代码目录中设置docker_var_lib_t上下文将允许docker写在那里(尽pipe我刚刚在策略中窥探了docker_share_t,看起来更合适的权限是明智的 – 没有chr / blk设备上下文)。

代码目录位置是不可预测的,所以设置一个系统范围的策略(通过semanage fcontext)似乎不是最好的前进方向; 我需要介绍一些约定。

有没有办法自动设置从主机挂载的卷的上下文?

您可以在目录上设置以下上下文

chcon -Rt svirt_sandbox_file_t $ HOME / code / export

然后运行你的docker命令

docker run –rm -it -v $ HOME / code / export:/ exported:ro image / foo / bar