转载

docker中遇到文件无法写入宿主文件问题(Permission denied)

docker中遇到文件无法写入宿主文件问题(Permission denied)

一、compose-docker 启动项目

使用compose-docker up -d 启动项目出现相对应的服务没有启动(本次以nginx为例)访问web没有出现想要的界面。 使用docker ps 刚启动可以看到相关端口,启动后过会状态变为restarting如图所示:

docker ps #查看运行的在docker中的进程

在这里插入图片描述

二、查看相关日志

使用docker logs 容器ID

docker logs ee9625867134

在这里插入图片描述 发现因为权限不够无法打开宿主/etc/nginx/nginx.conf文件

三、解决思路

遇到文件权限文件问题第一个想到问题,是不是由于文件夹的用户不同,或者某个文件没有相对应的权限。使用

ll 或者ls -l #查看对应的文件夹的用户组和权限问题

发现用户都是在root用户下,docker 也是运行在root下所以用户组不同问题排除。

chmod 777 文件名#赋予该文件读写执行的最大权限

问题依旧存在。

四、问题解决方法

造成其中原因是由于其中Centos 默认开启了SElinux。使用

setenforce 0 #临时关闭

临时关闭SElinux 重新启动docker 容器,问题就解决了。 此方法只是临时解决,大家可以永久关闭SElinux。


本文章来自:https://blog.csdn.net/weixin_43969945/article/details/112209549

SHELL
docker
  • 作者: qxb(联系作者)
  • 发表时间: 2021-05-13 00:29
  • 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
  • 公众号转载:请在文末添加作者公众号
  • 评论