gpt4 book ai didi

docker - Openshift Nginx权限问题[nginx : [emerg] mkdir() "/var/cache/nginx/client_temp" failed (13: Permission denied)]

转载 作者:行者123 更新时间:2023-12-01 21:13:07 43 4
gpt4 key购买 nike

我目前在尝试在 Openshift 中设置 nginx:alpine 时遇到问题。

我的构建运行得很好,但我无法在权限被拒绝的情况下进行部署,并出现以下错误

2019/01/25 06:30:54 [emerg] 1#1: mkdir() "/var/cache/nginx/client_temp" failed (13: Permission denied)

nginx: [emerg] mkdir() "/var/cache/nginx/client_temp" failed (13: Permission denied)

现在我知道 Openshift 在权限方面有点棘手,因为容器在没有 root 权限的情况下运行,并且 UID 是在 runetime 上生成的,这意味着它在/etc/passwd 中不可用。但该用户是 root 组的一部分。现在这里描述了应该如何处理这个问题

https://docs.openshift.com/container-platform/3.3/creating_images/guidelines.html#openshift-container-platform-specific-guidelines

我什至更进一步,使整个/var 完全可访问(777)以进行测试,但我仍然收到错误。这就是我的 Dockerfile 的样子

Dockerfile

FROM nginx:alpine

#Configure proxy settings
ENV HTTP_PROXY=http://my.proxy:port
ENV HTTPS_PROXY=http://my.proxy:port
ENV HTTP_PROXY_AUTH=basic:*:username:password

WORKDIR /app
COPY . .

# Install node.js
RUN apk update && \
apk add nodejs npm python make curl g++


# Build Application
RUN npm install
RUN ./node_modules/@angular/cli/bin/ng build
COPY ./dist/my-app /usr/share/nginx/html

# Configure NGINX
COPY ./openshift/nginx/nginx.conf /etc/nginx/nginx.conf
COPY ./openshift/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf

RUN chgrp -R root /var/cache/nginx /var/run /var/log/nginx && \
chmod -R 777 /var
RUN sed -i.bak 's/^user/#user/' /etc/nginx/nginx.conf

EXPOSE 8080

有趣的是,这种方法似乎只影响了 nginx 的 Alpine 版本。 nginx:latest (我认为基于 debian) 没有问题,这里描述了设置它的方法

https://torstenwalter.de/openshift/nginx/2017/08/04/nginx-on-openshift.html

有效。 (但我在该版本中遇到了一些其他问题,所以我切换到 Alpine )

有什么想法为什么这仍然不起作用吗?

最佳答案

我使用的是 openshift,权限有限,因此我使用以下 nginx 镜像(而不是 nginx:latest)解决了这个问题

FROM nginxinc/nginx-unprivileged 

关于docker - Openshift Nginx权限问题[nginx : [emerg] mkdir() "/var/cache/nginx/client_temp" failed (13: Permission denied)],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54360223/

43 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com