之前在讲述 Docker 架构的时候有提过这个:镜像。
这个可以说是 Docker 的一个重要组成,我们之前在学习 HelloWorld 的时候也从远程仓库下载过镜像,接下来我们详细讲述一下这些对于镜像的操作命令。
一、查看本地镜像
作用:查看本地机器上从远程仓库拉取的镜像。
命令:docker images 指令...
简单解释一下上面显示的 title:
REPOSITORY:表示仓库的仓库源,你也可以理解为当前镜像的镜像名称。
TAG:当前镜像版本。(latest 就是表示最新版本,同一个镜像是可以有不同版本,但是一个版本只能有一个镜像)
IMAGE ID:镜像 ID,这个我们后面启动的时候会用到。
CREATED:创建时间。(可以看到,这个 hello-world 是举例今天 5 个月之前创建的)
SIZE:镜像大小。
查看镜像时还可以增加一定的可选指令,例如常用的:-a、-qa 等。
序号 | 指令 | 作用 |
1 | -a | 显示所有镜像(包括中间层) |
2 | -q | 只显示镜像ID |
3 | --digests | 显示镜像的摘要信息 |
4 | --no-trunc | 显示完整的镜像信息 |
二、查找镜像
注意,这个和上面的内个不同,这个是查找!!!
作用:可以查找镜像。
命令:docker search xxx
我这里测试是找的 redis,当然这里因为找到很多,我截图只截了一部分。同样,来解释一下标题:
NAME:镜像名称。
DESCRIPTION:对于镜像的描述。
STARS:星星数,这个就和 Github 的内个 Star 类似。
OFFICIAL:是否是 Docker 官方发布,如果是 OK,那就是,如果是空,那就不是。(一般情况下我们都是用的官方发布的)
AUTOMATED:自动构建,如果是自动构建,我们是可以看到它构建时使用的 DockerFile(DockerFile后期我们会说)。
但是,一般情况下我们是很少用这个命令的,查找镜像最好是去 Docker Hub 网站进行搜索。
三、拉取镜像
作用:从远程仓库拉取镜像。
命令:docker pull xxx:xxx
默认我们拉取的都是镜像的最高版本、最新版本,我们可以来查看一下。
如果现在想要拉取 redis 6.2.6 版本,我们可以通过冒号加具体的版本号进行下载。
四、删除镜像
作用:删除本地拉取的镜像。
命令:docker rmi 指令 镜像id
docker rmi 指令 xxx
docker rmi 指令 xxx:xxx
可以看到,我们通过镜像 id 将本地的镜像删除了。同样,我们也可以使用镜像名字进行删除,但是这里要注意,只用镜像名称删除,只会删除 latest 版本,其他的是不会删除的,而且我们不推荐这样去删除,最好是通过 镜像 + 版本 进行删除。
!当然,我们这些个镜像后期都是要放在容器中运行的,好比现在 redis:latest 这个版本在容器中运行中,你现在想要删除这个镜像,那么是不允许的,它会报错。
可以看例子,我现在将 hello-world 运行起来了,接着我去删除这个 hello-world 镜像。
可以看到报错了,报错日志意思是:守护线程异常,无法删除 hello-world,容器 5c435ev... 正在使用这个镜像,如果要删除,需要强制删除。
这里我们同样通过可选参数:-f 进行强制删除。
如果要删除多个镜像,可以中间加空格进行删除。
当然,镜像命令还有,但是这个牵扯到后面的内容,所以就先弄这么多。
这一讲就讲到这里,有问题可以联系我:QQ 2100363119,欢迎大家访问我的个人网站:https://www.lemon1234.com