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



我刚开始学习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/部分(

为此

,您需要查找docker卷。您可以将主机文件系统的一部分公开给 docker 容器。查看 Docker 日志记录策略,其中说明了执行日志记录的不同方法。推荐的方法是 Docker 日志记录驱动程序,请在配置日志记录驱动程序中查看详细信息。

如处理容器中日志记录的更好方法中所示,可以使用以下命令通过数据卷容器将日志文件夹与主机文件夹链接:

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

上面的解决方案取自这个堆栈溢出答案,只是提供了答案,以防原始解决方案链接因删除或其他原因而过时。

最新更新