使用下面的命令可以创建一个容器并且把本地的/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 容器ID /bin/bash
   2.临时关闭selinux:
          setenforce 0
   3.添加selinux规则,改变要挂载的目录的安全性文本

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐