详解安装引擎运行镜像

Docker run流程及镜像的基本命令详解

服务器技术 2021-11-25 08:39:42 36

导读

1、run的工作流程当我们在安装完Docker引擎的时候,都会通过运行hello-world 镜像验证DockerEngine是否已正确安装:下面我们来分析run命令的执行流程:run的执行流程图如下当我们尝试运行一个在本机和DockerHub都找不到的镜像时:首先启动Docker引擎:sys……

1、run 的工作流程

当我们在安装完Docker引擎的时候,都会通过运行hello-world 镜像验证 Docker Engine 是否已正确安装:

Docker run流程及镜像的基本命令详解

下面我们来分析 run 命令的执行流程:run的执行流程图如下

Docker run流程及镜像的基本命令详解

当我们尝试运行一个在本机和DockerHub都找不到的镜像时:

首先启动Docker 引擎:

systemctl start docker

然后进行测试:

docker run wanliguyicheng123456789

Docker run流程及镜像的基本命令详解

Docker返回错误,找不到该镜像。

2、镜像的基本命令

列出镜像列表

我们可以使用 docker images 来列出本地主机上的镜像。

Docker run流程及镜像的基本命令详解

各个选项说明:

  • REPOSITORY:表示镜像的仓库源
  • TAG:镜像的标签
  • IMAGE ID:镜像的ID,所有镜像都是通过一个 64 位十六进制字符串 (内部是一个 256 bit 的值)来标识的。 为简化使用,前 12 个字符可以组成一个短ID,可以在命令行中使用。短ID还是有一定的 碰撞机率,所以服务器总是返回长ID。
  • CREATED:镜像的创建时间
  • SIZE:镜像的大小

注:同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本。

可选参数:

名称,简写 描述
–all,-a 列出所有镜像(默认隐藏中间镜像)
–quiet,-q 只显示镜像的 id
docker images -q
feb5d9fea6a5   

搜索镜像

我们可以从 Docker Hub 网站来搜索镜像,Docker Hub 网址为: https://hub.docker.com,比如我们要搜索mysql的镜像:

Docker run流程及镜像的基本命令详解

也可以使用 docker search 命令来搜索mysql镜像。

docker search mysql

各个选项说明:

  • NAME:镜像仓库源的名称
  • DESCRIPTION:镜像的描述
  • OFFICIAL:是否 docker 官方发布
  • STARS:类似 Github 里面的 star,表示点赞、喜欢的意思。
  • AUTOMATED:自动构建。

可选参数:

名称,简写 描述
–filter,-f 根据提供的条件过滤输出

搜索 STARS 超过3000的mysql镜像:

docker search mysql -f=stars=3000

Docker run流程及镜像的基本命令详解

下载镜像

语法:

docker pull [OPTIONS] NAME[:TAG|@DIGEST]

OPTIONS说明:

  • -a :拉取所有 tagged 镜像
  • --disable-content-trust:忽略镜像的校验,默认开启

测试:使用命令 docker pull 来下载 mysql 镜像

docker pull mysql

Docker run流程及镜像的基本命令详解

下载指定版本的mysql镜像:首先该版本要在Docker Hub中支持

docker pull mysql:5.7

Docker run流程及镜像的基本命令详解

再次用 docker images 命令查看下载的镜像:

Docker run流程及镜像的基本命令详解

删除镜像

通过镜像名删除:

docker rmi -f mysql

参数说明:-f :强制删除

 

通过镜像 ID 删除:

docker rmi -f 8b43c6af2ad0

删除多个镜像:多个镜像id间用空格隔开

docker rmi -f 镜像id 镜像id 镜像id 镜像id

删除所有镜像:先查出所有镜像id,然后通过镜像id逐个删除镜像

docker rmi -f $(docker images -aq)

Docker run流程及镜像的基本命令详解

镜像已全部删除!

1253067 TFnetwork_cn