像大多数反对稀疏Docker docs page here和here的人一样,我对docker-compose logs所做的事情感到困惑。
当我运行cd /apps/laradock/ && docker-compose logs -f nginx时,我看到从很多天前到现在的很长的输出。
这是从哪个或哪些文件中提取的?
我能找到的唯一的nginx日志文件是/apps/laradock/logs/nginx/error.log,它没有太多内容(所以不一样)。
有没有办法“日志轮换”或者以其他方式确保我不会在日志记录上花费超过一定数量的磁盘?
发布于 2018-09-02 00:28:10
使用默认的日志记录驱动程序json-file,您的日志存储在/var/lib/docker/containers/<container-id>/中。请注意,此处记录的是容器的PID 1的stdout和stderr的输出。
至于“日志轮换”,json-file驱动程序有一些选项可以传递给它,以限制每个日志文件的大小和日志文件的最大数量。请参见max-size和max-file of documentation。
使用docker-compose,可以设置如下选项:
version: '3'
services:
myservice:
image: ...
logging:
options:
max-file: "3"
max-size: "50m"发布于 2018-09-02 00:32:09
这取决于使用哪个logging driver。
您可以使用以下命令检查为Docker守护程序配置的是哪一个:
docker info -f '{{.LoggingDriver}}'默认驱动程序json-file记录到:
/var/lib/docker/containers/<container-id>/<container-id>-json.logDocker compose然后在docker-compose.yml中聚合每个容器的日志。
https://stackoverflow.com/questions/52129448
复制相似问题