将日志从Docker容器保存到Windows文件系统

时间:2019-04-18 06:28:45

标签: docker docker-compose

我刚刚开始学习docker,并且对将日志从容器保存到本地计算机感兴趣(用于存储/查看) 有没有办法将/var/lib/docker/containers/CONTAINER_ID/CONTAINER_ID-json.log保存到Windows文件系统?

我尝试在运行映像“ dtf”的docker-compose.yml文件中指定卷

services:
  web:
    image: dtf
    ports:
      - '5000:5000'
    logging:
      driver: "json-file"
      options:
        max-size: "1k"
        max-file: "3"
    volumes:
      - C:\logs:/var/lib/docker/containers/

根据我对docker卷的了解,我应该能够通过C:\ logs访问.log文件,但是我不确定如何正确将路径写入文件本身(/ CONTAINER_ID /部分)< / p>

1 个答案:

答案 0 :(得分:-1)

为此,您需要查找docker卷。您可以将主机文件系统的一部分公开给docker容器。 请查看Docker logging strategies,它说明了执行日志记录的不同方法。推荐的方法是Docker logging driver,请在Configuring logging drivers中查看更多信息。

Better ways of handling logging in containers所示,您可以使用以下命令通过data volume container将日志文件夹链接到主机文件夹:

# docker run -ti -v /dev/log:/dev/log fedora sh

以上解决方案摘自该stackoverflow answer,在原始解决方案链接由于删除或其他原因而过时的情况下,仅提供了答案。