【发布时间】:2020-07-10 10:40:21
【问题描述】:
在 Dockerfile 中,RUN mkdir -p /var/log/nginx 紧跟在 FROM 之后,但由于某种原因,它没有在容器中创建,如下所示
root@c6d43f610a51:/etc/nginx# cd /var/log
root@c6d43f610a51:/var/log# ls
这是容器上的nginx 配置。它明确指出nginx 日志将出现在/var/log/nginx 中,但这并没有发生。
root@c6d43f610a51:/var/log# cat /etc/nginx/nginx.conf
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
keepalive_timeout 65;
include /etc/nginx/conf.d/*.conf;
}
daemon off;
这是我完整的 Dockerfile:
FROM tiangolo/uwsgi-nginx-flask:python3.5
RUN mkdir -p /var/log/nginx
RUN pip install pipenv python-dotenv requests jira \
&& ln -sf /dev/stdout /var/log/nginx/access.log \
&& ln -sf /dev/stderr /var/log/nginx/error.log
EXPOSE 80
WORKDIR /app
CMD [ "pipenv", "run","flask", "run"]
仅供参考:nginx 网络服务器正在按预期工作,因此应该会填充日志。
【问题讨论】: