【Docker】5. 常用命令—镜像命令

学习命令,官方文档千万别忘记了,不会的就到这里来查。

一、帮助命令

1.显示docker哪些命令

docker --help

另外,也可以查看具体命令的用法,比如我想知道命令docker images是干嘛的,怎么用。

docker images --help

2.显示docker的版本信息

docker version

3.显示docker的系统信息

包括镜像和容器的数量等。

docker info

二、镜像命令 docker images

1.查看本地主机上的所有镜像

docker images

结果第一行有几个字段,分别表示:

  • REPOSITORY:镜像的仓库源,下载的时候通过这个名字下载,运行的时候也通过这个名字运行。
  • TAG:镜像的标签,显示版本。
  • IMAGE ID:镜像的 id。
  • CREATED:镜像的创建时间。
  • SIZE:镜像的大小。

常用可选项

Options:
  -a, --all             Show all images (default hides intermediate images)
  -q, --quiet           Only show image IDs
  • -a:列出所有镜像。
  • -q:只显示镜像id。

除了在网页的镜像仓库里搜索,还可以用命令行搜索。
比如搜索mysql的镜像。

docker search mysql

结果返回的是一个列表,可以看到符合搜索关键字的镜像信息:名称、描述、星数、是否官方等。

常用可选项

  -f, --filter filter   Filter output based on conditions provided

可以加些过滤条件,比如我只搜索mysql相关 stars数量3000以上的。

3.下载镜像 docker pull

下载我刚才搜索到的mysql镜像。

docker pull mysql

最后的真实地址,其实就是命令docker pull mysql等价于docker pull docker.io/library/mysql:latest

指定镜像版本下载

docker pull mysql:5.7

注意,这里的5.7一定是镜像里存在的版本才可以。

注意看结果里,更上面的不同,出现了Already exists,这里说明了上面的的几个镜像,我已经有了,不需要再重复下载了,可以共用。
极大节省资源,这也就是linux联合文件系统的优势。

再查看一下本地镜像,mysql的2个下载的镜像都有了,一个最新版,一个5.7。

4.删除镜像 docker rmi

根据镜像id删除指定。
现在删除mysql5.7的镜像,先查看到对应镜像id,然后删除。

docker rmi -f 2c9028880e58

可以看到,与mysql镜像共用的文件是没有删除的。

删除多个镜像。

docker rmi -f id id id

全部删除。

docker rmi -f $(docker images -aq)

随着学习的深入,还会学习更多的命令。