使用k8s集群后,节点上会存储docker镜像。而镜像占用磁盘。或者本地开发后时需要批量删除docker镜像。

先使用docker system df 查看磁盘占用情况:

TYPE                TOTAL               ACTIVE              SIZE                RECLAIMABLE
Images              73                  8                   10.78GB             9.987GB (92%)
Containers          16                  15                  1.263MB             0B (0%)
Local Volumes       0                   0                   0B                  0B

使用docker images 查看镜像:

image-a            v1d2-39             69e8013fc1        2 months ago        694MB
image-a            v1d2-40             69e80241c2        2 months ago        694MB
image-b            v1d0-70             03bf2d0525        2 months ago        893MB
image-b            v1d0-65             87578bdaf3        2 months ago        893MB
image-b            v1d0-61             7f925735af        2 months ago        893MB

使用grep和awk过滤得到镜像ID。(匹配镜像名称为image-b,标签为除了v1d0-7之外的其他行,获取第三列的ID)

docker images | grep image-b | grep -v "v1d0-7" | awk  '{print $3}'
03bf2d0525
87578bdaf3
7f925735af

使用docker rmi删除过滤得到的镜像:

docker rmi $(docker images | grep image-b | grep -v "v1d0-7" | awk  '{print $3}')

然后再使用docker system df查看,发现磁盘占用变少了。

docker rmi 文档地址:https://docs.docker.com/engine/reference/commandline/rmi/

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐