【发布时间】:2019-09-08 10:47:37
【问题描述】:
我刚开始学习 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 容器中的某个地方?还是应用程序将日志打印到标准输出?
-
command
docker logs image_name打印以前的日志,所以我认为它们必须存储? -
来自容器的日志以
json格式存储在主机中的某个位置。 (您是否正在使用默认的日志驱动程序)。我假设这不是您想要的日志。你想要容器吐出的日志。因此我的问题是,您的应用程序是将其日志写入文件还是打印到标准输出? -
可能是标准输出,如果这是在
docker logs image_name命令之后打印的内容 -
然后您需要将输出
docker logs保存到本地系统。检查如何在 Windows 中进行输出重定向
标签: docker docker-compose