Docker 查看容器启动日志

$ 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 中有很多信息,具体的大家可以自行查看。


已有 0 条评论

    感谢参与互动!