删除所有图像和容器后释放空间[关闭]

问题描述 投票:0回答:3

我已删除所有图像/容器

ubuntu@ubuntu:/var/lib/docker$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ubuntu@ubuntu:/var/lib/docker$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

我注意到里面还有大约15GB的空间被使用

/var/lib/docker

ubuntu@ubuntu:/var/lib/docker$ sudo du --max-depth=1 -h .
12G     ./volumes
104K    ./aufs
4,0K    ./containers
1,3M    ./image
4,0K    ./trust
4,0K    ./swarm
2,6G    ./tmp
108K    ./network
15G     .

问题:

  1. 如何释放这个空间?

  2. 取出里面的东西安全吗

    /var/lib/docker

docker diskspace
3个回答
15
投票

尝试(来自 docker 1.13):

docker system df

它向您显示尺寸:

  • 图片
  • 容器
  • 本地卷

并使用以下方法删除本地卷:

docker volume prune

对于老码头工人尝试:

docker volume rm $(docker volume ls -q)

5
投票

对于我当前的 docker 版本(客户端和服务器均为 1.12.1),删除所有卷的方法是使用:

docker volume rm $(docker volume ls -q)

但以下更安全:(感谢马特的评论)

$(docker volume ls -qf dangling=true)

同样来自版本:1.13.0 (2017-01-18)添加了一些命令:

$ docker system prune
$ docker container prune
$ docker image prune
$ docker volume prune
$ docker network prune

变更日志:添加新的

docker system
命令以及用于系统资源管理的
df
prune
子命令,以及
docker {container,image,volume,network} prune
子命令 #26108 #27525 / #27525


1
投票

大部分空间被

docker volume
占据,从输出中可以看出:

12G./卷

Docker卷用于为docker容器保存数据并在容器之间共享数据,它们独立于容器的生命周期。因此,删除映像/容器不会释放它们占用的磁盘空间。请参阅他们的官方文档了解更多详情。

如果您使用的是最新版本的 docker,您可以找到 volume 相关命令文档了解更多详细信息(例如列出/删除/创建卷),对于旧版本的 docker,您可以参考 github 上的这个脚本如何清理卷。

希望这会有所帮助:-)

© www.soinside.com 2019 - 2024. All rights reserved.