首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何以非root用户身份运行nginx容器?

如何以非root用户身份运行nginx容器?
EN

Stack Overflow用户
提问于 2020-07-27 11:02:54
回答 2查看 9.2K关注 0票数 5

每次我尝试以非root用户身份运行容器时,都会得到以下错误:

代码语言:javascript
复制
 the "user" directive makes sense only if the master process runs with super-user privileges, ignored in /etc/nginx/nginx.conf:2

Dockerfile:

代码语言:javascript
复制
FROM nginx:1.17.6
RUN chown -R nginx:nginx /var/cache/nginx && \
        chown -R nginx:nginx /var/log/nginx && \
        chown -R nginx:nginx /etc/nginx/conf.d
RUN chmod -R 777 /etc/nginx/conf.d

USER nginx

COPY app/build /usr/share/nginx/html

RUN rm /etc/nginx/conf.d/default.conf

COPY nginx/nginx.conf /etc/nginx/conf.d


CMD ["nginx","-g","daemon off;"]
EN

回答 2

Stack Overflow用户

发布于 2020-11-04 20:09:40

使用来自nginx的无根docker-imager。

镜像

代码语言:javascript
复制
nginxinc/nginx-unprivileged  

DockerHub

https://hub.docker.com/r/nginxinc/nginx-unprivileged

GitHub

https://github.com/nginxinc/docker-nginx-unprivileged

票数 12
EN

Stack Overflow用户

发布于 2020-07-27 17:34:15

您可以删除(或注释) nginx.conf文件顶部的user指令。

当您以root身份运行nginx时,此指令是相关的。它定义拥有nginx子进程的pid的用户。

当您不以root身份运行nginx时,此指令无关紧要,您的nginx子进程将使用当前用户运行。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63108119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档