我刚开始学习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
上面的解决方案取自这个堆栈溢出答案,只是提供了答案,以防原始解决方案链接因删除或其他原因而过时。