docker nginx 容器的日志存储在主机中的什么位置
Where are logs of docker nginx conainter stored in host
我使用default nginx image和Filebeat来读取日志并将它们发送给ELK。
两个容器(nginx 容器和 Filebeat 容器)都在同一台主机上。
这是 nginx 镜像的 Dockerfile
FROM nginx
COPY . /usr/share/nginx/html/
EXPOSE 80
在我的 nginx 容器中,访问日志转到 STDOUT
,错误日志转到 STDERR
。
当我从主机 docker logs <nginx-containter-id>
提示时,我可以看到来自 nginx 容器的日志。
但是主机上的容器文件夹中没有任何内容 (/var/lib/docker/containers/nginx-container-id
)
如何设置filebeat读取日志?
每个容器都有自己的日志文件,您可以通过以下方式知道它在哪里:
docker inspect --format='{{.LogPath}}' <nginx-containter-id>
它会告诉您日志文件的路径。
参考文献:
我使用default nginx image和Filebeat来读取日志并将它们发送给ELK。 两个容器(nginx 容器和 Filebeat 容器)都在同一台主机上。
这是 nginx 镜像的 Dockerfile
FROM nginx
COPY . /usr/share/nginx/html/
EXPOSE 80
在我的 nginx 容器中,访问日志转到 STDOUT
,错误日志转到 STDERR
。
当我从主机 docker logs <nginx-containter-id>
提示时,我可以看到来自 nginx 容器的日志。
但是主机上的容器文件夹中没有任何内容 (/var/lib/docker/containers/nginx-container-id
)
如何设置filebeat读取日志?
每个容器都有自己的日志文件,您可以通过以下方式知道它在哪里:
docker inspect --format='{{.LogPath}}' <nginx-containter-id>
它会告诉您日志文件的路径。
参考文献: