问题描述

最近项目使用Docker构建镜像时总是会出现空镜像,如下图所示,其中REPOSITORY和TAG名称都为<none>,非常好奇。

image-20230811134459683

查找空镜像

执行命令

1
docker images -f dangling=true

image-20230811135343038

清理空镜像

执行以下命令

1
docker rmi $(docker images -f "dangling=true" -q)

或者

1
docker image prune

注意-a参数不仅会删除dangling镜像,还会删除所有unuse镜像,这里仅仅是删除dangling镜像。

image-20230811135556359

再次查看Docker镜像,发现空镜像都被清除了

image-20230811135643166

问题复现

由于空镜像是项目镜像构建时出现的,所以这里重复之前构建时的执行的动作。

1
docker build -t net-admin:latest .

本次构建时没有发现空镜像

image-20230811140753904

重复构建之后,没有发现空镜像,很奇怪,待下次问题复现后记录原因。