docker容器内部日志本地怎么查看

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker容器内部日志本地怎么查看相关的知识,希望对你有一定的参考价值。

参考技术A 打到标准输出,然后docker 的logdriver 可以配成syslog ,这样就能用syslog统一收集host上的所有容器的日志。同时,支持logrotate。

如何查看docker日志 怎样查看docker日志

参考技术A preoverflow-x: auto 如何查看docker日志,让我们一起了解一下?

通过docker logs命令可以查看容器的日志。高效的监控和日志管理对保持生产系统持续稳定的运行以及排查问题至关重要。在微服务架构中,由于容器的数量众多以及快速变化的特性使得记录日志和监控变得越来越重要。

docker查看日志的几个方式:

1、docker logs --tail=1000 容器名称 (查看容器前多少行的日志)(推荐)

2、docker 容器启动后,可以进入以下位置查看日志(/var/lib/docker/containers/容器ID/容器ID-json.log)(进入容器内部查看日志)

3、#查看compose所有容器的运行日志

docker-compose -f docker-compose-app.yml logs -f

4、#查看compose下某个容器的运行日志

docker-compose -f docker-compose-app. yml logs -f服务名>

5、# 也可以把compose的容器日志输出到日志文件里去,然后用tail -f随时查看

docker-compose -f docker-compose-app. yml logs -f >> myDockerCompose.log &

具体操作如下:

docker attach [options] 容器会连接到正在运行的容器,然后将容器的标准输入、输出和错误流信息附在本地打印出来。命令中options的取值有三种:--detach-keys,--no-stdin,--sig-proxy。

该命令只是进入容器终端,不会启动新的进程。所以当你同时使用多个窗口进入该容器,所有的窗口都会同步显示。如果一个窗口阻塞,那么其他窗口也就无法再进行操作。

使用ctrl+c可以直接断开连接,但是这样会导致容器退出,而且还stop了。如果想在脱离容器终端时,容器依然运行。就需要使用--sig-proxy这个参数。例如:
$ docker attach --sig-proxy=false mytest
注意: 当使用docker attach连接到容器的标准输入输出时,docker使用大约1MB的内存缓冲区来最大化应用程序的吞吐量。如果此缓冲区填满,那么输出或写入的速度将会受到影响。因此查看应用日志,可以使用docker logs命令。

以上是关于docker容器内部日志本地怎么查看的主要内容,如果未能解决你的问题,请参考以下文章

Docker 从入门到实践系列三 - Docker 常用命令

linux12 - docker容器化 -->容器的相关命令

docker一次查看两个容器日志

exec...的docker中的EXEC

将日志输出到Docker容器外

docker查看日志命令