天天看点

docker常用清理命令

多是用在自己犯错时候的笔记吧,终非圣贤嘛

  1. docker ps -a -q //查看所有容器ID
  2. docker stop $(sudo docker ps -a -q) //stop停止所有容器
  3. docker rm $(sudo docker ps -a -q) //remove删除所有容器
  4. docker stop $(docker ps -q) && docker rm $(docker ps -aq) //一次性停止删除容器
  5. docker system df //查看Docker占用分布
  6. docker system df -v //命令可以进一步查看空间占用细节,以确定是哪个镜像、容器或本地卷占用过高空间
  7. docker system prune //可对空间进行自动清理。

    该命令所清理的对象如下:

    已停止的容器、未被任何容器使用的卷、未被任何容器所关联的网络、所有悬空的镜像

  8. docker image prune //删除悬空的镜像。
  9. docker container prune:删除无用的容器。

    默认情况下docker container prune命令会清理掉所有处于stopped状态的容器,如果不想那么残忍统统都删掉,也可以使用–filter标志来筛选出不希望被清理掉的容器。例子:清除掉所有停掉的容器,但24内创建的除外:

    docker container prune --filter “until=24h”

  10. docker rm -v $(docker ps -aq -f status=exited) //删除所有已退出的容器
  11. docker rmi $(docker images -f “dangling=true” -q) //删除所有悬空镜像,不删除未使用镜像
  12. docker volume prune //删除无用的卷
  13. docker network prune //删除无用的网络

    附:

rancher创建失败后,服务器清理:

df -h | grep kubelet | awk -F % '{print $2}' | xargs umount
rm /var/lib/kubelet/* -rf
rm /etc/kubernetes/* -rf
rm /etc/cni/* -rf
rm /var/lib/rancher/* -rf
rm /var/lib/etcd/* -rf
rm /var/lib/cni/* -rf
rm /opt/cni/* -rf 
(ip link del flannel.1)
(ip link del cni0)
(iptables -F && iptables -t nat -F)
docker ps -a|grep -v gitlab|awk '{print $1}'|xargs docker rm -f
docker volume ls|awk '{print $2}'|xargs docker volume rm
systemctl restart docker
           

常用调试:

docker logs agent/kubelet/proxy
           
journalctl -f -u kubelet.service