首页 > 解决方案 > 使用`docker run -- rm`时有没有办法找到容器的运行时间

问题描述

我在一个应用程序上工作,该应用程序需要使用类似的命令运行许多短期容器docker run --rm MYIMAGE

我需要在--rm容器退出后使用它来清理容器资源,以避免随着时间的推移耗尽系统资源。

现在我想知道这些容器平均运行了多长时间。是否有一些关于执行了哪些容器以及它们运行了多长时间的系统级日志?或者这个信息在容器被移除后会消失吗?

标签: docker

解决方案


Docker 守护进程确实通过events. 这些日志具有时间戳和对容器名称的规范引用,因此可以用于您的目的。

不幸的是,没有(AFAIK)一种在 docker 本身中持久保存 Docker 事件的好方法(它们不能被记录到文件中),但是你可以使用类似的东西

curl --no-buffer -XGET --unix-socket /var/run/docker.sock http://localhost/events

并将其重定向到某个地方以获取在主机上创建的 Docker 事件的日志。


推荐阅读