docker笔记8-镜像命令
先回顾一下容器、存储、镜像三者之间的关系。
我们知道docker的logo是一条大鲸鱼背上驮着集装箱。那我们对应到docker如下:
1)蓝色的大海里面------->宿主机系统比如我笔记本windows 7;
2)鲸鱼---------->docker环境(yum install docker-ce)
3)集装箱-------->容器实例(from 来自我们镜像模板)
功能:列出本地主机上的镜像
[root@t-dockerchenzx]#dockerimagesREPOSITORYTAGIMAGEIDCREATEDSIZEtest_weblatest58b7fb33ace53daysago959MB
选项说明:
REPOSITORY:表示镜像的仓库源tag:镜像的标签imageid:镜像idcreated:镜像的创建时间size:镜像大小
同一个仓库源可以有多个tag,代表这个仓库源的不同版本。我们使用REPOSITORY:TAG来定义不同的镜像。如果你不指定一个镜像的版本标签,例如你只使用centos,docker就默认使用docker:latest镜像
OPTIONS说明:
-a:列出本地所有的镜像(含中间映像层,因为镜像是分层的,-a会把所有层都显示出来)-q:只显示镜像id。--digests:显示镜像的摘要信息--no-trunc:显示完整的镜像信息,即IMAGEID会显示完整docker search
功能:查找某个镜像名字
网站:注意,即使你配置了阿里云加速,docker search命令查找的网站也是是https://hub.docker.com。阿里云加速只是下载时才会被用到。
[root@t-dockerchenzx]#dockersearchtomcat
画外音:仓库就是存放镜像的地方。
-s:查找starts超过多少的镜像
[root@t-dockerchenzx]#dockersearch-s30tomcatFlag--starshasbeendeprecated,use--filter=stars=3insteadNAMEDESCRIPTIONSTARSOFFICIALAUTOMATEDtomcatApacheTomcatisanopensourceimplementati…1996[OK]tomeeApacheTomEEisanall-ApacheJavaEEcertif…55[OK]dordoka/tomcatUbuntu14.04,OracleJDK8andTomcat8base…49[OK
--no-trunc:不减掉描述信息,即显示完整的描述信息
[root@t-dockerchenzx]#dockersearch-s30--no-trunctomcatFlag--starshasbeendeprecated,use--filter=stars=3insteadNAMEDESCRIPTIONSTARSOFFICIALAUTOMATEDtomcatApacheTomcatisanopensourceimplementationoftheJavaServletandJavaServerPagestechnologies1996[OK]tomeeApacheTomEEisanall-ApacheJavaEEcertifiedstackwhereApacheTomcatistopdog.55[OK]dordoka/tomcatUbuntu14.04,OracleJDK8andTomcat8baseddockercontainer.49[OK]
--automated:只列出automated build类型的镜像
功能:下载镜像
[root@t-dockerchenzx]#dockersearch-s30tomcatFlag--starshasbeendeprecated,use--filter=stars=3insteadNAMEDESCRIPTIONSTARSOFFICIALAUTOMATEDtomcatApacheTomcatisanopensourceimplementati…1996[OK]tomeeApacheTomEEisanall-ApacheJavaEEcertif…55[OK]dordoka/tomcatUbuntu14.04,OracleJDK8andTomcat8base…49[OK][root@t-dockerchenzx]#[root@t-dockerchenzx]#dockerpulltomcat#相当于tomcat:latest下载最新版本[root@t-dockerchenzx]#dockerpull192.168.0.106:5000/hello-world:v1.2#这个表示指定仓库源下载镜像docker rmi
功能:删除某个镜像
删除单个:docker rmi -f 镜像id
[root@t-dockerchenzx]#dockerrmihello-worldErrorresponsefromdaemon:conflict:unabletoremoverepositoryreference"hello-world"(mustforce)-container85296d21d05cisusingitsreferencedimage2cb0d9787c4d[root@t-dockerchenzx]#dockerrmi-fhello-world#如果容器正在运行会删不掉,可以加-f强制删除Untagged:hello-world:latestUntagged:hello-world@sha256:4b8ff392a12ed9ea17784bd3c9a8b1fa3299cac44aca35a85c90c5e3c7afacdcDeleted:sha256:2cb0d9787c4dd17ef9eb03e512923bc4db10add190d3f84af63b744e353a9b34
删除多个:docker rmi -f 镜像1:tag 镜像2:tag,不写tag,删除的就是latest
删除全部:docker rmi -f $(docker images -qa)
docker save and load(保存镜像和加载镜像)功能:镜像名用户名主机名'cat | docker load'
功能:给镜像打标签:
[root@k8s-node3~]#dockerimagesREPOSITORYTAGIMAGEIDCREATEDSIZEmysql5.7.226bb891430fb63monthsago372MB
[root@k8s-node3~]#dockertagmysql:5.7.22docker-registry:5000/mysql:5.7.22
[root@k8s-node3~]#dockerimagesREPOSITORYTAGIMAGEIDCREATEDSIZEdocker-registry:5000/mysql5.7.226bb891430fb63monthsago372MBmysql5.7.226bb891430fb63monthsago372MB
删除镜像的标签:
[root@k8s-node3~]#dockerrmi-fdocker-registry:5000/mysql:5.7.22Untagged:docker-registry:5000/mysql:5.7.22
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。