docker清理 頂 原 薦

清理已經停止的容器

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,懸掛的鏡像(過程鏡像)

輸入圖片說明

同樣的方法可以用在 networkvolumeimage

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 *
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章