docker清理

原创
2017/12/10 01:59
阅读数 809

清理已经停止的容器

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 *
展开阅读全文
打赏
1
25 收藏
分享
加载中
更多评论
打赏
0 评论
25 收藏
1
分享
返回顶部
顶部