Docker这些none:none的镜像,难道就不配拥有名字吗
1 前言
欢迎访问南瓜慢说 www.pkslow.com获取更多精彩文章!
搞容器开发一段时间后,想看看都有哪些镜像,执行了一下docker images -a,蒙圈了,有一堆<none>:<none>的镜像。不知有什么用,不知能不能删,不知会不会占用很多空间。接下来我们探索一下吧。

2 镜像也有好坏吗?
这些<none>:<none>镜像可分为两类:好与坏、有用与无用、不建议删除和建议删除的。
2.1 好的none
好的<none>:<none>镜像是由于镜像分层的中间镜像。它们只会在docker images -a才会显示出来,用docker images是不会显示的。它们也不会造成空间问题。
2.2 坏的none
坏的<none>:<none>镜像会占用空间,主要是由于新加镜像替换原来相对标签的镜像,原来镜像就变成了<none>:<none>而不会被删除。
我们执行docker images查看:
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
pkslow/springboot-mongo 0.0.6 f029f9b6e703 28 minutes ago 356MB
pkslow/springboot-mongo latest f029f9b6e703 28 minutes ago 356MB
<none> <none> 56de36189ad6 29 minutes ago 356MB
<none> <none> 9e00dfd258dc 40 hours ago 356MB
<none> <none> 2d736eaaafd0 2 weeks ago 346MB
然后再docker build一次,用同样的标签0.0.6。
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
pkslow/springboot-mongo 0.0.6 2119e4fbc6e8 43 seconds ago 356MB
pkslow/springboot-mongo latest 2119e4fbc6e8 43 seconds ago 356MB
<none> <none> f029f9b6e703 30 minutes ago 356MB
<none> <none> 56de36189ad6 31 minutes ago 356MB
<none> <none> 9e00dfd258dc 40 hours ago 356MB
<none> <none> 2d736eaaafd0 2 weeks ago 346MB
认真查看可以得出,以前最新的镜像ID为f029f9b6e703,后来变成了<none>:<none>。
这些坏坏的镜像也叫dangling images,空悬镜像。
3 如何删除dangling images
既然没用,又还占用空间,不如就删掉它。Docker没有自动删除这些镜像的机制,可以通过以下命令删除:
$ docker rmi $(docker images -f "dangling=true" -q)
检查一下,已经没有<none>的镜像了。
$ docker images | grep '<none>'
欢迎关注微信公众号<南瓜慢说>,将持续为你更新...

多读书,多分享;多写作,多整理。
Docker这些none:none的镜像,难道就不配拥有名字吗的更多相关文章
- 【docker linux】linux系统镜像转化为docker镜像
概述 使用docker安装linux的同学都知道,你在docker提供的仓库安装linux系统,你就会体验到最精简的.最纯净的linux系统,当然,他会精简到你连ifconfig命令都需要自己配置,恰 ...
- docker学习笔记3:镜像操作(查找和下载)
一.查看本地镜像 只有下载后,镜像才会保存在本地(docker环境所在的主机),通过如下命令可以查看本地已经存在的镜像. 命令:dokcer images 上面命令列出本地所有已经存在的镜像,显示的信 ...
- docker:(1)docker基本命令使用及发布镜像
docker镜像可以完全看作一台全新的电脑使用,无论什么镜像都是对某一东西进行了配置,然后打包后可以快速移植到需要的地方直接使用 省去复杂的配置工作 比如java web项目部署,如果是新部署,需要装 ...
- docker入门(二)容器与镜像的理解
10张图带你深入理解Docker容器和镜像 申明:此篇文章是转载的(原文地址http://dockone.io/article/783),今天意外发现已经有人转载了(复制了),希望大家关注原创 原本打 ...
- docker入门(二)容器与镜像的关系
[编者的话]本文用图文并茂的方式介绍了容器.镜像的区别和Docker每个命令后面的技术细节,能够很好的帮助读者深入理解Docker. 这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(co ...
- 详解docker实战之搭建私有镜像仓库 - kurbernetes
1.实战目的 搭建企业私有的镜像仓库,满足从开发环境推送和拉取镜像.当我们使用k8s来编排和调度容器时,操作的基本单位是镜像,所以需要从仓库去拉取镜像到当前的工作节点.本来使用公共的docker hu ...
- docker (2) 通用/镜像命令
Docker 的常用命令: (1)Docker help 命令: 可以查看有关docker的所有操作命令: (2)docker COMMAND -–help 查看docker 的某项命令的帮助文档 ...
- Docker实践之02-使用镜像及定制
目录 一.获取镜像 二.使用镜像启动容器实例 三.列出镜像 四.删除本地镜像 五.定制镜像 通过commit命令定制镜像 通过Dockerfile定制镜像 docker build的工作原理 dock ...
- Docker commit 命令保存的镜像文件太大的问题
基础镜像: centos7.5 进入容器后, 先后安装了 jdk1.8, maven3.6.0, git, rocketmq4.3.2 安装完成后使用 docker commit 命令保存为镜像 结果 ...
随机推荐
- MySQL CodeFirst的配置与注意事项
mysql+ef的配置相比较mssql+ef来说复杂一些.我的感受就是配置难度在于插件版本造成的各种不兼容问题.另外参考了很多博客,将多个博客里的经验综合才得以实现,因为不是每个人的操作都和那些博客作 ...
- 深入Mybatis源码——执行流程
前言 上一篇分析Mybatis是如何加载解析XML文件的,本篇紧接上文,分析Mybatis的剩余两个阶段:代理封装和SQL执行. 正文 代理封装 Mybatis有两种方式调用Mapper接口: pri ...
- 获取本机SqlServer名称
using System.Data.Sql; //检索包含有关可用SQL Server实例的信息的表,必须先使用共享/静态Instance属性来检索枚举器 SqlDataSourceEnumerato ...
- web 部署专题(二):gunicore 并发部署(用gunicorn+gevent启动Flask项目)
转自:https://blog.csdn.net/dutsoft/article/details/51452598 Flask,webpy,Django都带着 WSGI server,当然性能都不好, ...
- web 部署专题(一):Gunicorn运行与配置方法
Gunicorn“绿色独角兽”是一个被广泛使用的高性能的Python WSGI UNIX HTTP服务器,移植自Ruby的独角兽(Unicorn )项目,使用pre-fork worker模式,具有使 ...
- 微信小程序热更新,小程序提示版本更新,版本迭代,强制更新,微信小程序版本迭代
相信很多人在做小程序的时候都会有迭代每当版本迭代的时候之前老版本的一些方法或者显示就不够用了这就需要用到小程序的热更新.或者说是提示升级小程序版本 editionUpdate:function(){ ...
- JavaScript 基础 学习 (二)
JavaScript 基础 学习 节点属性 每一个节点都有自己的特点 这个节点属性就记录着属于自己节点的特点 1. nodeType(以一个数字来表示这个节点类型) 语法:节点.nodeT ...
- 图解:如何实现最小生成树(Prim算法与Kruskal算法)
这是图算法的第四篇文章 图解:如何实现最小生成树 文章目录: 1.概念和性质 2.思路探索 3.Kruskal算法 4.Prim算法 5.代码实现 1.概念和性质 今天我们考虑的模型是加权无向图,问题 ...
- CondenseNet:可学习分组卷积,原作对DenseNet的轻量化改造 | CVPR 2018
CondenseNet特点在于可学习分组卷积的提出,结合训练过程进行剪枝,不仅能准确地剪枝,还能继续训练,使网络权重更平滑,是个很不错的工作 来源:晓飞的算法工程笔记 公众号 论文:Neural ...
- 【原创】linux设备模型之kset/kobj/ktype分析
背 景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本 ...