$ docker logs [OPTIONS] CONTAINER
Options:
--details 显示更多的信息
-f, --follow 跟踪实时日志
--since string 显示自某个timestamp之后的日志,或相对时间,如40m(即40分钟)
--tail string 从日志末尾显示多少行日志, 默认是all
-t, --timestamps 显示时间戳
--until string 显示自某个timestamp之前的日志,或相对时间,如40m(即40分钟)
案例:
查看容器日志
docker logs 97069f94437b
docker logs -t --tail 100 CONTAINER_ID(或CONTAINER_NAME)
简单参数解释:
-t:显示时间
100:显示最近100行数据
CONTAINER_NAME为启动容器的name
查看指定时间后的日志,只显示最后100
行:
docker logs -f -t --since="2018-02-08" --tail=100 CONTAINER_ID
查看最近30分钟
的日志:
docker logs --since 30m CONTAINER_ID
例如: docker logs --since 30m 97069f94437b
查看某时间之后的日志:
docker logs -t --since="2019-11-02T13:23:37" CONTAINER_ID
查看某时间段日志:
docker logs -t --since="2019-11-02T13:23:37" --until "2019-11-03T12:23:37" CONTAINER_ID
还有就是在使用docker的时候,某些未知的情况下可能启动了容器,但是过了没几秒容器自动退出了。这个时候如何排查问题呢?
容器启动的情况下 通常碰到这种情况无非就是环境有问题或者应用有问题,应用问题再本地可以进行调试解决,但是环境问题就比较头疼了。这个时候我们就需要查看容器的日志来进行排查。
我们可以通过如下命令来获取容器的日志地址
docker inspect --format '{{.LogPath}}' 97069f94437b
然后通过cat
命令查看上述命令找到的日志地址
cat /var/lib/docker/containers/97069f94437b86b50341f8253d85f426884315c3d027f7b7fa975751c7d8e18e/97069f94437b86b50341f8253d85f426884315c3d027f7b7fa975751c7d8e18e-json.log
命令解释:
`docker inspect` 用于获取容器/镜像的元数据。其中就包含容器日志的地址,上述命令只是增加了一个--format参数用于将日志地址过滤出来。
docker inspect
中有很多信息,具体的大家可以自行查看。
注意:本文归作者所有,未经作者允许,不得转载