nginx容器映射配置文件后,启动一直报错提示:failed (13: Permission denied)的排查

问题现象:

使用harbor 的install.sh 创建docker-compose之后,出现nginx容器一直重启。
在这里插入图片描述

查看日志发现是:配置文件无权限。报错信息如下:
Sep 2 16:43:13 172.28.0.1 nginx[1344]: 2024/09/02 08:43:13 [emerg] 1#0: open() “/etc/nginx/nginx.conf” failed (13: Permission denied)
Sep 2 16:43:13 172.28.0.1 nginx[1344]: nginx: [emerg] open() “/etc/nginx/nginx.conf” failed (13: Permission denied)

在这里插入图片描述

排查思路:

确定宿主机文件权限:为root用户
在这里插入图片描述
确定容器的启动用户:

docker inspect  nginx |grep -i user

在这里插入图片描述

确定容器的用户uid,因为容器一直重启,所以不能进容器查看,采用启动一个相同镜像的容器查看:

docker run -it --rm  goharbor/nginx-photon:v2.11.1 id nginx

在这里插入图片描述
确定宿主机的权限为root,但是容器是nginx用户启动,确定在容器中打不开对应的配置文件。

问题解决

修改宿主机的文件夹权限。(其他方法也可以,只要能让容器有权限读取到宿主机的文件)

chown 10000:10000 -R nginx

在这里插入图片描述

验证问题解决:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值