如何列出所有容器的 docker 日志大小?



如果你这样做docker container ls --size它不会显示日志的大小,这可能会占用你所有的空间,你甚至不知道。

这是命令

sudo du -h $(docker inspect --format='{{.LogPath}}' $(docker ps -qa))

防止日志占用所有空间的一个好方法是将其添加到您的 docker 撰写中

logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "5"

每个 docker 容器的日志大小,按大小排序:

# without total:
sudo du -h  $(docker inspect --format='{{.LogPath}}' $(docker ps -qa)) | sort -h
# with total:
sudo du -ch $(docker inspect --format='{{.LogPath}}' $(docker ps -qa)) | sort -h

所有 docker 容器日志的总大小都在一行中:

# human-readable:
sudo du -ch $(docker inspect --format='{{.LogPath}}' $(docker ps -qa)) | tail -n1
# in Mbytes (suitable for monitoring scripts):
sudo du -cm $(docker inspect --format='{{.LogPath}}' $(docker ps -qa)) | tail -n1

如果您没有任何 docker 容器(docker ps -qa输出为空(,将导致错误。

最新更新