📜  docker 查看容器日志 (1)

📅  最后修改于: 2023-12-03 14:40:50.332000             🧑  作者: Mango

Docker 查看容器日志

在使用 Docker 容器的过程中,我们需要时常查看容器的日志以便及时发现问题或进行调试。Docker 提供了多种方式查看容器日志,本文将介绍其中的几个方法。

使用 docker logs 命令

docker logs 命令可以查看容器的标准输出和标准错误流。语法如下:

docker logs [OPTIONS] CONTAINER

其中,OPTIONS 包括:

  • -f:实时输出容器日志。
  • --tail:查看最后几行日志,默认值为 all
  • --since:查看自某时间以来的日志。
  • --until:查看某个时间之前的日志。
  • --details:显示容器的详细信息。
  • --timestamps:显示每条日志的时间戳。
  • --follow:实时输出容器日志,并且在容器终止时退出。

示例:

docker logs -f --since=10m --details --timestamps CONTAINER_ID
使用 docker-compose logs 命令

在使用 Docker Compose 管理容器时,我们可以使用 docker-compose logs 命令查看容器的日志。语法如下:

docker-compose logs [OPTIONS] [SERVICE...]

其中,OPTIONS 包括:

  • -f:实时输出容器日志。
  • --tail:查看最后几行日志,默认值为 all
  • --no-color:禁用颜色输出。
  • --timestamps:显示每条日志的时间戳。
  • --no-log-prefix:禁用日志前缀。

示例:

docker-compose logs -f --no-color --timestamps SERVICE_NAME
查看容器文件系统中的日志文件

容器里的日志文件通常存储在 /var/log 目录下。我们可以使用 docker cp 命令将文件复制到本地进行查看。语法如下:

docker cp CONTAINER:/PATH/TO/LOG LOCAL_PATH

示例:

docker cp CONTAINER:/var/log/nginx/access.log .
总结

以上是 Docker 查看容器日志的几种方式。需要注意的是,在使用 docker logs 命令查看容器的日志时,如果容器没有将标准输出和标准错误流重定向到文件中,那么该命令只能查看到少量的日志输出。因此,最好在启动容器时将日志输出重定向到文件中。