似乎在容器中没有“ acl”的情况下挂载了文件系统,因此“ setfacl”将不起作用。而且它也不会让我重新安装它,甚至无法运行’df -h’。
我需要setfacl,因为我以root身份拥有我网站上的所有文件,并且授予Web服务器用户仅对几个目录(如缓存,日志等)的写权限。
我能做什么?
好消息是Docker支持ACL。
在早期版本中,Docker使用了一个不支持它们的名为AUFS的文件系统。通过使用适当的选项启动Docker守护程序,您可以告诉Docker使用Device Mapper(LVM)进行存储:
码头工人 **-d-存储驱动程序= devicemapper** --daemon = true
来源:https://groups.google.com/forum/#!topic / docker- user / 165AARba2Bk
然后您就可以setfacl在容器中使用了。
setfacl
现在,任何合理的最新发行版或Docker都将使用overlay2存储驱动程序,该驱动程序可立即使用。要检查什么是您的存储驱动程序:
overlay2
docker info | grep Storage
df -h由于其他不相关的原因而无法正常工作:它依赖于/etc/mtab,在您的情况下不存在。在您的容器中,从创建一个链接procfs,以解决此问题:
df -h
/etc/mtab
procfs
ln -s /proc/mounts /etc/mtab