我想按时间顺序一起在docker-compose.yaml中打印所有容器的标准输出。
我的理解是,这是docker-compose logs
的预期行为,但是截至昨天运行,该命令仅打印docker-compose文件中两个服务之一的日志。我仍然可以使用docker-compose logs <service2>
打印日志,但是运行更通用的docker-compose logs
或docker-compose logs <service1> <service2>
只能打印来自service1的日志,并且在看似随机的时间点之后会忽略service2。
此外,如果我使用docker-compose logs -f
将记录器连接到终端并立即命中service2,则可以在命令行中看到输出,但是在运行docker-compose logs
之后仍会忽略刚才的日志由service2生成,但是获取service1之前和之后的日志。
编辑:使用find /var/lib/docker/containers/ -type f -name "*.log" -delete
手动删除日志文件至少可以解决此问题,但这是一团糟,让我相信这可能是缓冲区溢出了吗?我将查看日志达到一定大小后是否可以重复该问题。