docker问题汇总

docker占用空间
#docker system df
docker system df 命令给出了images、containers、volumes、build cache占用磁盘的大小。最后一列RECLAIMABLE,表示可回收的空间大小。

使用docker system df -v,可以显示更详细的信息:
知道空间占用情况了,结下来就是做清理工作。

docker提供了docker system prune来清理停掉的container、悬挂的image(没有tag)、没有使用的network、数据卷。

当然有个-a参数,可以清理所有的东西,包括没有使用的镜像(谨慎使用)。

在这里插入图片描述

cat dockerImageClean.sh

#!/bin/bash
# docker clean
tp=`df -h | grep \/dev\/vdb | awk '{print $5}' | tr -d %`

t1=`docker images | grep -E "10.10.*sensors-log" |awk 'NR > 4 {printf "%s\n",$3}'`
t2=`docker images | grep -E "10.10.*satrun " |awk 'NR > 4 {printf "%s\n",$3}'`


deleteImage() {
if [ $tp -ge 50 ];then
for i in $1
do
docker rmi  -f $i
#echo $i
done
fi
}

#delete sensors-log and sensors-logagent
for i in $t1
do
deleteImage $i
done

#delete saturn
for j in $t2
do
deleteImage $j
done

你可能感兴趣的:(docker问题汇总)