Docker - 删除所有图像和容器后释放 space
Docker - free up space after removing all images & containers
我已经删除了所有images/containers
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 .
问题:
如何释放这个 space?
取出里面的东西安全吗/var/lib/docker
?
尝试(来自 docker 1.13):
docker system df
它显示您的尺码:
- 图片
- 容器
- 本地卷
并使用以下方式删除本地卷:
docker volume prune
老码头工人试试:
docker volume rm $(docker volume ls -q)
对于我当前的 docker 版本(客户端和服务器均为 1.12.1),删除所有卷的方法是使用:
docker volume rm $(docker volume ls -q)
但以下更安全:(感谢 Matt 的评论)
$(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
Changelog: Add new docker system
command with df
and prune
subcommands for system resource management, as well as docker {container,image,volume,network} prune
subcommands #26108 #27525 / #27525
大多数 space 被 docker volume
占用,正如您从输出中看到的那样:
12G ./volumes
Docker卷用于为docker容器持久化数据并在容器之间共享数据,它们独立于容器的生命周期。因此删除 image/container 不会释放它们占用的磁盘 space。详情请参考their official docs。
如果您使用的是最新版本的 docker,您可以找到 volume related commands docs for more details(list/remove/create volumes e.g), for older version of docker, you can refer to this script on github 了解如何清理卷。
希望这会有所帮助:-)
我已经删除了所有images/containers
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 .
问题:
如何释放这个 space?
取出里面的东西安全吗
/var/lib/docker
?
尝试(来自 docker 1.13):
docker system df
它显示您的尺码:
- 图片
- 容器
- 本地卷
并使用以下方式删除本地卷:
docker volume prune
老码头工人试试:
docker volume rm $(docker volume ls -q)
对于我当前的 docker 版本(客户端和服务器均为 1.12.1),删除所有卷的方法是使用:
docker volume rm $(docker volume ls -q)
但以下更安全:(感谢 Matt 的评论)
$(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
Changelog: Add new
docker system
command withdf
andprune
subcommands for system resource management, as well asdocker {container,image,volume,network} prune
subcommands #26108 #27525 / #27525
大多数 space 被 docker volume
占用,正如您从输出中看到的那样:
12G ./volumes
Docker卷用于为docker容器持久化数据并在容器之间共享数据,它们独立于容器的生命周期。因此删除 image/container 不会释放它们占用的磁盘 space。详情请参考their official docs。
如果您使用的是最新版本的 docker,您可以找到 volume related commands docs for more details(list/remove/create volumes e.g), for older version of docker, you can refer to this script on github 了解如何清理卷。
希望这会有所帮助:-)