docker容器nginx通过浏览器访问没有权限

通过docker-compose启动的Nginx服务在80端口遇到权限问题,尝试了设置privileged为true和chmod更改权限未果。最终发现是nginx.conf配置文件中的usernginx;改为userroot;解决了问题。原因可能是原先用户nginx对所需文件缺少权限,改为root用户后拥有足够权限访问。

概述

  通过docker-compose的方式在服务器启动了一个nginx服务,部署在了80端口,但是通过ip进行访问的时候一直提示 "/usr/share/nginx/html/index.html" failed (13: Permission denied),然后我认为是没有权限,于是docker启动的时候添加了privlage:true,但是依旧提示没有权限,然后又通过chmod在docker容器里面进行了配置,依旧提示没有权限,那么权限的问题在哪里配置?

解决

  我上面说的一些方法也是可以解决关于权限的问题的,只不过不对当前的症而已。后来仔细检查发现nginx.conf配置文件中的第一行是这样的:

user nginx;

然后(从网络查找方案)修改为了

user root;

然后重新启动了docker,这样就可以了。但是我没有明白为什么这样修改就可以了,因为我以前的服务器配置的也是user nginx;但是没有出现过这种问题,所以目前也是比较郁闷原因是是什么?路过的网友有知道原因的,给留个足迹。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值