红联Linux门户
Linux帮助

docker挂载的目录无法读写:ls: cannot open directory的解决

发布时间:2017-05-08 09:36:03来源:linux网站作者:double12gzh
使用下面的命令可以创建一个容器并且把本地的/home/dock/Downloads目录挂载到容器中的/usr/Downloads中:
[root@Docker ~]# docker run -it -v /home/dock/Downloads:/usr/Downloads ubuntu /bin/bash
 
在Centos上创建完后,会出现如下问题:
root@637fe9ea94f0:/usr/Downloads# ls
ls: cannot open directory '.': Permission denied
 
解决办法:
原因是CentOS7中的安全模块selinux把权限禁掉了。
有以下几种方式解决挂载的目录没有权限的问题:
1.在运行容器的时候,给容器加特权,及加上 --privileged=true 参数:
docker run -i -t -v /soft:/soft --privileged=true 637fe9ea94f0 /bin/bash
2.临时关闭selinux:
setenforce 0
3.添加selinux规则,改变要挂载的目录的安全性文本。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/30602.html