镜像的使用

列出本机容器

docker imagesdocker image lsdocker images -a

参数 说明
REPOSITORY 表示镜像的仓库源
TAG 镜像的标签
IMAGE ID 镜像ID
CREATED 镜像创建时间
SIZE 镜像大小

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

我们使用 REPOSITORY:TAG 来定义不同的镜像。

如果运行时没有指定版本,则会默认运行最新的。

仓库名和标签都显示为 <none> 的镜像为悬挂镜像,是由于官方维护了新镜像,取消旧镜像导致的,一般来说,可以随意删除

  • 显示悬挂镜像 docker images -f dangling=true

  • 删除悬挂镜像 docker image prune

列出部分镜像

docker images ubuntu

docker images ubuntu:18.04

列出 mongo:3.2 之后建立的镜像 docker image ls -f since=mongo:3.2

列出 mongo:3.2 之前建立的镜像 docker image ls -f before=mongo:3.2

通过 LABEL 过滤 docker image ls -f label=com.example.version=0.1

查找镜像

一、去 DockerHub 网站搜索镜像 https://hub.docker.com/

二、命令行查找镜像 docker search nginx

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

下载镜像

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

  • 镜像仓库地址:地址的格式一般是 <域名/IP>[:端口号]。默认地址是 DockerHub
  • 仓库名:这里的仓库名是两段式名称,即 <用户名>/<软件名>。对于 DockerHub 如果不给出用户名,则默认为 library 也就是官方镜像。
  • 标签:可以理解为版本号

例如:拉取官方 php:7.4-fpm 镜像 docker pull php:7.4-fpm

当我们从docker镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。

一、从已经创建的容器中更新镜像,并且提交这个镜像

二、使用 Dockerfile 指令来创建一个新的镜像

更新镜像

暂无

构建镜像

基于当前某个容器打包镜像

docker commit 5baaffcc5678 sxy/test:v4

设置镜像标签

暂无

删除本地镜像

格式: docker image rm [选项] <镜像1> [<镜像2> ...]

例如: docker rmi php:7.4-fpm