我在Dockerfile中不以root身份启动Nginx

这是订单.

我试着基于Ubuntu创建一个不通过root启动的nginx。
由于主进程也是以www-data用户启动,所以会出现一个警告。
源文件中的nginx.conf和app.conf会以www-data用户启动,可以根据需要编写虚拟主机或上游配置。

Dockerfile 软件描述文件

FROM ubuntu
USER root
RUN apt-get install -y nginx
COPY ./docker-compose/nginx/etc/nginx/nginx.conf /etc/nginx/nginx.conf
COPY ./docker-compose/nginx/etc/nginx/conf.d/app.conf /etc/nginx/conf.d/app.conf
RUN mkdir /var/lib/app
RUN chown -R www-data:root /var/log/nginx
RUN unlink /etc/nginx/sites-enabled/default
RUN mkdir /var/run/nginx
RUN mkdir /var/lib/nginx/body
RUN mkdir /var/lib/nginx/fastcgi
RUN mkdir /var/lib/nginx/proxy
RUN mkdir /var/lib/nginx/scgi
RUN mkdir /var/lib/nginx/uwsgi
RUN chown www-data:root /run/nginx
RUN cd /var/lib/nginx && chown www-data:root body fastcgi proxy scgi uwsgi
RUN chmod 700 /var/lib/nginx/body
RUN chmod 700 /var/lib/nginx/fastcgi
RUN chmod 700 /var/lib/nginx/proxy
RUN chmod 700 /var/lib/nginx/scgi
RUN chmod 700 /var/lib/nginx/uwsgi
USER www-data
WORKDIR /tmp

指令

当你要编写和运行的时候,使用这个方式。

/usr/sbin/nginx -g ‘daemon off;’ -c /etc/nginx/nginx.conf 可以用下列方式翻译成中文:
/usr/sbin/nginx -g ‘daemon off;’ -c /etc/nginx/nginx.conf

结束的感觉