文章源自【字节脉搏社区】-字节脉搏实验室
作者-purplet
通过docker图标深入理解几者的关系
蓝色的大海 ————–我们的操作系统
鲸鱼 ————————-docker
集装箱 ———————-容器实例 from镜像模板(下图最左边的)
1.docker images 列出本地主机上的镜像
这里可以看到前面的是我们可以拉取的镜像,通过docker run 命令从docker hub上拉取镜像
docker run hello-world(先去找本地有没有这个镜像模板,有的话就通过这个镜像模板生成容器实例)
REPOSITORY:表示镜像的仓库源(唯一镜像名)上图的这些就属于镜像模板
TAG:镜像的标签
IMAGE ID :镜像ID(唯一)
CREATED:镜像创建时间
SIZE:镜像大小
-a:列出本地所有的镜像(含中间映像层)
-q:只显示镜像ID
–digests:显示镜像的摘要信息
–no-trunc:显示完整的镜像信息
为什么会有none呢,可以理解镜像就是一个千层饼,一层套着一层
可以查看到全部的镜像ID值,以上最常用的是-a和-q
2.docker search 某个镜像名字(Tomcat)它实际上是从dockerhub(类似github保存着不同镜像)上进行的寻找
OPTIONS说明
–no-trunc:显示完整的镜像描述
-s :列出收藏数不小于指定值的镜像
–automated:只列出automatedbuild类型的镜像(是ok的)
3.docker pull 某个镜像名字(tomcat)[:TAG]
从dockerhub上对镜像文件进行下载
docker pull tomcat 等价于 docker pull tomcat:latest
4.docker rmi 镜像名字(hello-world)[:TAG](3.2版本)
默认也是删除最新的
当有容器实例跑着的时候会出现第一个的情况无法删除,接下来我们用-f进行强制删除
可以看到删除的是两层(映证前面的千层饼说法,镜像是一层一层套在一起的)
删除单个:docker rmi -f 镜像ID(或者镜像名称)
删除多个:docker rmi -f 镜像名1:TAG 镜像名2:TAG
删除全部:docker rmi -f $(docker images -qa)