如果我运行 docker 镜像并调用uptime
,我总是会得到比实际值更长的值。
docker run -it 1d2dfb3a35ab
root@7efb3e947f73:/# uptime
23:41:57 up 16 min, 0 users, load average: 0.06, 0.02, 0.00
它还没有运行 16 分钟,甚至 16 秒都没有。=:-O
这是一个已知问题吗?
答案1
显示的正常运行时间是主机的正常运行时间。内核不会以这种方式跟踪单个容器的正常运行时间(但 Docker 会这样做)。
答案2
第一个进程的启动时间可以作为容器的启动时间:
stat /proc/1/cmdline
/proc/1/cmdline
是 procfs 中的一个虚拟文件,其创建日期与容器创建日期相同。stat 命令显示其文件系统级属性以及其创建日期。