刚好自己因为工作环境需要自己定制一个 nginx 镜像, 生成之后, 发现容器没有相关 nginx 日志输出
- FROM env_centos:latest
- COPY nginx.repo /etc/yum.repos.d/
- # 注意, 日志要重定向输出到 stdout, 否则无法看到容器日志输出
RUN yum -y install nginx httpd-tools && mkdir -p /data/nginx_conf/upstream && mkdir -p /data/nginx_conf/vhosts && rm -f /etc/nginx/conf.d/default.conf && ln -sf /dev/stdout /var/log/nginx/access.log && \> 这 2 行是关键, 当然, 这个要跟你的 nginx 配置文件匹配, 不要照搬
ln -sf /dev/stderr /var/log/nginx/error.log> 这 2 行是关键
- COPY nginx.conf /etc/nginx/nginx.conf
- EXPOSE 80
- #EXPOSE 443
- CMD ["nginx", "-g", "daemon off;"]
最终的效果如下
- #docker exec test123 ls -l /var/log/nginx/
- lrwxrwxrwx 1 root root 11 Dec 29 10:51 access.log -> /dev/stdout
- lrwxrwxrwx 1 root root 11 Dec 29 10:51 error.log -> /dev/stderr
来源: http://www.bubuko.com/infodetail-2901189.html