背景:
出于开发目的,我做了很多docker-compose up -d
和docker-compose stop
。
我也可以查看容器的日志
- docker logs --details --since=1m -t -f container_name
or
- docker inspect --format='{{.LogPath}}' container_name
cat path-from-previous
问题是当我想查看10天或更旧的日志时,没有,日志只有今天的日志。
当我做docker inspect container_name
时,我得到以下信息
"Created": "todays-timestamp"
我的日志记录是默认配置。
"LogConfig": {
"Type": "json-file",
"Config": {}
},
答案 0 :(得分:1)
其背后的原因是因为您的docker-log中没有轮换。
如果您使用的是Linux系统,请转至:
/var/lib/docker/containers/*/*.log {
rotate 7
daily
compress
missingok
delaycompress
copytruncate
}
并创建文件 docker-container 像这样=> /etc/logrotate.d/docker-container
将此写入文件:
logrotate -fv /etc/logrotate.d/docker-container
它将获取所有构建的图像及其每日日志,然后旋转+压缩它们。
您可以使用以下方法进行测试:
{{1}}
输入您的docker文件夹 / var / lib / docker / containers / [CONTAINER ID] / ,您可以看到轮换。
参考:this