📅  最后修改于: 2023-12-03 14:40:50.332000             🧑  作者: Mango
在使用 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
命令查看容器的日志时,如果容器没有将标准输出和标准错误流重定向到文件中,那么该命令只能查看到少量的日志输出。因此,最好在启动容器时将日志输出重定向到文件中。