如何清理码头工人?

Jee*_*eel 6 unix containers docker ubuntu-16.04

我们使用docker进行连续构建.我删除了不需要的图像和容器.只有4张最大5GB的图像.但看起来像是其他东西占用了所有的磁盘空间.如何清理和改善空间的任何提示?

    Filesystem      Size  Used Avail Use% Mounted on
udev             48G     0   48G   0% /dev
tmpfs           9.5G   26M  9.5G   1% /run
/dev/sda1       456G  428G  5.2G  99% /
tmpfs            48G  7.4M   48G   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs            48G     0   48G   0% /sys/fs/cgroup
tmpfs           100K     0  100K   0% /run/lxcfs/controllers
tmpfs           9.5G     0  9.5G   0% /run/user/1000
none            456G  428G  5.2G  99% /var/lib/docker/aufs/mnt/4b96935f7fb6b517031df23849292a06eab92013d0610d922588688132013a5e
shm              64M     0   64M   0% /var/lib/docker/containers/c3b48e0215e05e13f79466de64cb0a2b4646cef30e020e651c59cb1950f0d70d/shm
none            456G  428G  5.2G  99% /var/lib/docker/aufs/mnt/4388442c65c13654a7d1cd51894aa5c06137166628a0a52d6854abc230417140
shm              64M     0   64M   0% /var/lib/docker/containers/027ce91cd66eca1ed134decdb8c13e6676fd34b1f6affe406513220037e63936/shm
none            456G  428G  5.2G  99% /var/lib/docker/aufs/mnt/13595cb64024d0d8f3cf7c09f90e37baccee08ea9b9b624c41d971a195d614e0
shm              64M     0   64M   0% /var/lib/docker/containers/3212761e701699313a127d50a423677c1d0ddaf9099ae37e23b25b8caaa72b37/shm
none            456G  428G  5.2G  99% /var/lib/docker/aufs/mnt/149839edbef826cdf289e66988c206dd6afebdb4257cc22e91551f65ea034f77
shm              64M     0   64M   0% /var/lib/docker/containers/9c084651b9ecf035257a34b9dd4415689e4c685e660e3013ad9673955834be
Run Code Online (Sandbox Code Playgroud)

Ruw*_*han 8

在Docker版本1.13之后,有新的prune命令来清理docker环境.

用于docker system df通过可回收空间获取有关容器,图像及其磁盘使用情况的统计信息.

使用docker system prune摆脱停止容器,悬挂体积和悬挂图像.

要仅删除已停止的容器,您可以使用docker container prunedocker image prune删除所有悬空图像.


mic*_*ard 6

常见的错误是忘记删除卷.

对于CI和CD,docker rm -v在删除容器时使用它是一种很好的做法,使用-v可以确保删除自动创建的卷.

可以肯定的是,docker volume ls如果这里有一些值,则键入这意味着您的某些容器创建了一些卷.

您可以一次性docker volume rm $(docker volume ls -q)删除它们(它不会删除任何当前使用的卷,而是会显示错误消息,但请谨慎使用)