6docker镜像相关操作命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6docker镜像相关操作命令相关的知识,希望对你有一定的参考价值。
1、列出本地镜像
[[email protected] ~]# docker images
REPOSITORY: 表示镜像仓库源(也就是镜像的名字)
TAG: 镜像的标签
IMAGE ID: 镜像ID
CREATED: 镜像创建的时间
VIRTUAL SIZE: 镜像大小
同一镜像源可以有多个TAG,代表这个仓库的不同版本,docker中使用REPOSITORY:TAG来定义不同的镜像。
如果你不指定镜像的版本标签,例如你使用ubuntu,docker将默认使用ubuntu:latest镜像
2、docker images的其他参数
[[email protected] ~]# docker images -a #列出本地所有镜像(含中间层镜像)
[[email protected] ~]# docker images -q #只列出镜像ID(不抱哈中间层镜像)
[[email protected] ~]# docker images -qa #qa可以结合使用
[[email protected] ~]# docker images --digests #显示镜像摘要信息,显示信息会多出DIGEST这一列
[[email protected] ~]# docker images --no-trunc #显示完整的镜像信息,IMAGE ID列会显示的镜像ID是非截断的
[[email protected] ~]# docker images --digests --no-trunc #--digests --no-trunc也可以结合使用
3、搜索镜像
[[email protected] ~]# docker search tomcat
docker search是去 https://hub.docker.com 查找镜像,即便配置了阿里云镜像加速器,也是去docker hub上查找。配置的阿里云镜像加速,只有在拉取的时候才回去阿里云去拉取
NAME: 镜像的名字
DESCRIPTIION: 镜像的描述信息
STARS: star的复数,这一列表示了该镜像受欢迎或者说收藏的数量
OFFICIAL:是否是官方镜像
AUTOMATED:镜像是否是自动构建的
4、docker search的其他参数
[[email protected] ~]# docker search -s 30 tomcat #列出收藏数(喜好数)不小于30的镜像,过滤掉那些不受欢迎的镜像
[[email protected] ~]# docker search --no-trunc tomcat #显示完成描述信息
[[email protected] ~]# docker search --automated tomcat #只列出自动构建的镜像类型
[[email protected] ~]# docker search -s 30 --no-trunc --automated tomcat #上面三个参数可以结合使用
5、拉取镜像(下载镜像)
[[email protected] ~]# docker pull tomcat
docker pull tomcat等价于docker pull tomcat:latest,其中latest为标签,如果镜像名字后边的标签省略,则表示你要拉取的是最新版本的镜像
从截图中我们可以看到,我们拉取的镜像版本为tomcat:latest,同时也可以看到,们在拉取tomcat的时候,拉取了很多东西,这是因为镜像是分层的。拉取镜像完成后可以使用docker images来查看镜像
6、删除一个镜像
docker rmi 镜像名字 | 镜像ID
[[email protected] ~]# docker rmi hello-world
Error response from daemon: Conflict, cannot delete 19b3f968b60c because the container f1040287fb72 is using it, use -f to force
Error: failed to remove images: [hello-world]
删除出错了,deamon返回了出错信息,原因是container f1040287fb72 这在使用它,提示你可以使用-f强制删除
[[email protected] ~]# docker rmi -f hello-world
Untagged: hello-world:latest
Deleted: 19b3f968b60c5d8ccd301a63ddcdf94ba8ecd7e4df5002cca0f12f136239f8e0
Deleted: 74bc6c628a008492ac5b8ebf00c36fd72512e653606efb4f5209501747a9efb4
因为镜像是多层的,所以镜像删除的时候开到被删除了多个
再使用docker images查看,可以看到hello-world镜像没有了
7、删除多个镜像
[[email protected] ~]# docker rmi -f hello-world nginx
要想同时删除多个镜像,只需要在docker rmi -f命令后加上多个镜像的名字即可
[[email protected] ~]# docker rmi -f hello-world nginx
Untagged: hello-world:latest
Deleted: 19b3f968b60c5d8ccd301a63ddcdf94ba8ecd7e4df5002cca0f12f136239f8e0
Deleted: 74bc6c628a008492ac5b8ebf00c36fd72512e653606efb4f5209501747a9efb4
Untagged: nginx:latest
Deleted: 58ad891ca57113f079c3e1dfded05596d9c872f5a7c7324da1ddca1d9f5da3b1
Deleted: 737b99470bcfbe49f64d1b8b5f62a7e74aedb15e3af8ae5329a204f676e8b332
Deleted: 87840be63b41cf898758b55d44e8a45f3c87f395fa18cf445dde4df82e4667fa
Deleted: 23fe9a6fb739a3ab3cf9fc9e7aff39c71e8ed56d3682b53b4f971b3048cd6021
Deleted: cd5bff5bfc8b3146d7386e7c92e262977e30c705cb2c3c859a32fcae243b59e3
Deleted: d2c1a74309fb4029bea18307b1fa8e1ba619f55a8fced4bfe6eb1b6d375dd1ca
Deleted: e7452d7ecf81fe07f9fb969591038d324bdc9e2c469234069d926f7976cc73e1
Deleted: 65384c160d5c820aac48ebc211b39371e8e1ab1b86f0369c3a2c90f1daedf68a
Deleted: 7905a4b7e8329186131f73ece726c2b22a1a6daae2efed5d087cb57aa18a500a
Deleted: 2557373f5bdd84caef5b158746171da599db3973485831129a04f0f9f786d1fa
[[email protected] ~]#
8、一次性删除全部镜像
[[email protected] ~]# docker rmi -f $(docker images -qa)
以上是关于6docker镜像相关操作命令的主要内容,如果未能解决你的问题,请参考以下文章