清理已經停止的容器
docker container prune
or
docker rm $(docker ps -q -f status=exited)
清理鏡像
# 查看鏡像
docker images
docker rmi $(docker images -q -f "dangling=true")
or
# 查看過程鏡像
docker images | grep "none"
docker rmi $(docker images | grep "none" | awk '/ / { print $3 }')
清理所有不用數據
docker system prune -a
停止的容器,不使用的
volume
,不使用的networks
,懸掛的鏡像(過程鏡像)
同樣的方法可以用在 network
,volume
,image
等
docker network prune
docker volume prune
docker image prune
清理固定名稱容器
docker stop $(docker ps | awk '/rancher/{print $1}')
docker rm $(docker ps -a | awk '/rancher/{print $1}')
rmi $(docker images -a | awk '/rancher/{print $3}')
清理舊的Git Runner
docker ps -f status=exited | grep "\-cache-" | awk '{print $1}' | xargs docker rm
清理掛載
docker volume rm $(docker volume ls -qf dangling=true)
docker volume ls -qf dangling=true | xargs -r docker volume rm
清理網絡
docker network ls
docker network ls | grep "bridge"
$ docker network rm $(docker network ls | grep "bridge" | awk '/ / { print $1 }')
清理容器日誌
cat /dev/null >/var/lib/docker/containers/containerid/containerid.log-json.log
找到對應container的日誌文件,一般是在 /var/lib/docker/containers/containerid/containerid.log-json.log(containerid是指你的容器id)
限制日誌大小和文件
在容器啓動配置(/etc/docker/daemon.json
)中設置 :
{
"log-driver":"json-file",
"log-opts":{
"max-size":"10m",
"max-file":3
}
}
或在docker run
時攜帶參數:
--log-opt max-size=10m --log-opt max-file=3
控制 Machine 大小
docker-machine create --driver virtualbox --virtualbox-disk-size "40000" default
附
查看文件夾佔用空間
du -sh *