Docker镜像使用

1.1 镜像获取

从 Docker 镜像仓库获取镜像的命令是docker pull。其命令格式为:

 docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]


拉去镜像之后我们可以使用docker image ls查看镜像

运行我们拉去的镜像:

docker run -it --rm hello-world


docker run就是运行容器的命令。

  • -it 这是两个参数,一个是 -i:交互式操作,一个是 -t 终端。我们这里打算进入 bash 执行一些命令并查看返回结果,因此我们需要交互式终端。
  • --rm这个参数是说容器退出后随之将其删除。默认情况下,为了排障需求,退出的容器并不会立即删除,除非手动 docker rm。我们这里只是随便执行个命令,看看结果,不需要排障和保留结果,因此使用 --rm 可以避免浪费空间。

1.2 列出所有镜像

想要查看所有镜像我们可以使用docker image ls

列表包含了 仓库名标签镜像 ID创建时间 以及 所占用的空间

我们想要查看镜像大小可以使用docker system df


如果想要查看部分镜像,根据仓库名列出镜像

docker image ls 镜像名


列出特定的某个镜像,比如:

docker image ls ubuntu:18.04

docker image ls支持过滤-f,比如,我们希望看到在 mongo:3.2 之后建立的镜像,可以用下面的命令:

docker image ls -f since=mongo:3.2

想查看某个位置之前的镜像也可以,只需要把 since 换成 before 即可。

默认情况下,docker image ls 会输出一个完整的表格,但是我们并非所有时候都会需要这些内容。比如,刚才删除虚悬镜像的时候,我们需要利用 docker image ls 把所有的虚悬镜像的 ID 列出来,然后才可以交给 docker image rm 命令作为参数来删除指定的这些镜像,这个时候就用到了 -q 参数。

另外一些时候,我们可能只是对表格的结构不满意,希望自己组织列;或者不希望有标题,这样方便其它程序解析结果等,这就用到了 Go 的模板语法

docker image ls --format "{{.ID}}: {{.Repository}}"


或者打算以表格等距显示,并且有标题行,和默认一样,不过自己定义列:

docker image ls --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

1.3 删除镜像

如果要删除本地的镜像,可以使用 docker image rm 命令,其格式为:

docker image rm 镜像(镜像ID,镜像短 ID,镜像长 ID,镜像名)


我们配合docker image ls -q来删除多个镜像

docker image rm $(docker image ls -q redis)
posted @ 2024-04-25 16:29  无涯子wyz  阅读(16)  评论(0编辑  收藏  举报