docker的系统日志的位置是在“/var/lib/docker/.”目录中,每个容器都有一个特定的日志,具体位置是“/var/lib/docker/containers/ID名/ID名-json.log”;日志采用的是JSON格式,不易阅读,可以利用docker提供的一个内置命令来查看,语法为“docker logs -f…”。
本教程操作环境:linux7.3系统、docker19.03版、Dell G3电脑。
docker的系统日志在哪
简单的答案是 Docker 将容器日志存储在其主要存储位置/var/lib/docker/. 每个容器都有一个特定于其 ID 的日志(完整 ID,而不是通常显示的缩短的 ID),您可以像这样访问它:
/var/lib/docker/containers/ID/ID-json.log
这 就是它们的存储位置,但由于它们采用 JSON 格式,因此不容易阅读,而且必须使用完整的容器 ID 很烦人。Docker 提供了一个内置命令来查看它们:
docker logs -f e4bd48ef3103
在这里,该-f 标志将保持提示打开并“关注”文件中的任何新条目。您还可以使用–tail 该文件,或使用–timestamps 来显示日志时间,或使用–until并 –since 根据时间进行过滤。
如果您使用 Docker Compose,则可以使用其中的 log 命令轻松查看所有日志:
docker-compose logs
但是,您会注意到的一件事是,这是 STDOUT 和 STDERR,它们对很多事情都很有用,但仅显示 Docker 文件中“CMD”指定的入口点的控制台输出。许多应用程序都有自己的专用日志系统,这些系统通常会记录到/var/log/nginx/access.log. 仍然可以通过 Docker 从主机端访问这样的日志。
推荐学习:《docker视频教程》