docker挂载目录失败/权限拒绝

把宿主机的一个目录挂载到容器中的一个目录,当访问容器中的这个目录时,出现如下问题: ls: cannot open directory .: Permission denied 无法访问目录,权限拒绝。 该问题通常在centos7下出现。或者一个容器启动成功后,里面的服务无法成功访问,这是因为centos7中的安全模块selinux把权限禁掉了,一般的解决方案有以下两种: (1)临时关闭selinux 直接在centos服务器上执行以下命令即可。执行完成以后建议重新docker runsetenforce 0 (2)给容器加权限 在docker run时给该容器加权限,加上以下参数即可: --privileged=true 一般都推荐使用这种方式。 按上述方法修改后, 如果执行下面命令失败 docker run --name rookie-nginx-test -d -p 8082:80 -v ~/nginx/www:/usr/share/nginx/html -v ~/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v ~/nginx/logs:/var/log/nginx -v ~/nginx/conf/conf.d:/etc/nginx/conf.d --link php7-fpm:php nginx 则是因为~/nginx/www/ 目录下没有index 文件导致. 手动创建index.php 文件解决

Licensed under CC BY-NC-SA 4.0
Built with Hugo
主题 StackJimmy 设计