有没有办法确定我的 macOS 机器上 docker 卷的大小?

Bon*_*io2 7 macos docker docker-volume

我知道docker volume lsand docker inspect -s,但前者不显示大小信息,后者即使有一个--size选项,也会忽略它的数量。

有什么我想念的吗?

Fed*_*kun 5

这个:

docker volume inspect --format '{{ .Mountpoint }}' volumeNameHere
Run Code Online (Sandbox Code Playgroud)

将返回主机上卷的安装点。因此,要获得大小,只需执行以下操作:

du -sh $(docker volume inspect --format '{{ .Mountpoint }}' volumeNameHere)
Run Code Online (Sandbox Code Playgroud)

  • 这很奇怪。当我运行“dockervolumeinspect--format'{{.Mountpoint}}'my-volume-id”时,它返回“/var/lib/docker/volumes/my-volume-id/_data”,但是“du -sh” $(docker volume inform --format '{{ .Mountpoint }}' my-volume-id)` 返回“没有这样的文件或目录”。 (6认同)

Fra*_*ein 5

正如@MikeWu 的回答所指出的,可以通过以下方式查看 Docker 卷的大小:

docker system df -v
Run Code Online (Sandbox Code Playgroud)

但必须滚动一下才能找到该部分Local Volumes space usage:。使用管道sed命令,例如:

docker system df -v | sed -n '/VOLUME NAME/,/^ *$/p'
Run Code Online (Sandbox Code Playgroud)

将有助于提高可读性并减少感兴趣部分的输出 - 通过仅从VOLUME NAME第一个空行开始打印。