Docker Image(镜像)

一、概念

Docker Image 本质上是一个 read-only 只读文件, 这个文件包含了文件系统、源码、库文件、依赖、工具等一些运行 application 所必须的文件

可以将 Docker Image 理解成一个模板, 可以通过这个模板实例化出来很多容器

image 里面是一层层文件系统 Union FS。联合文件系统,可以将几层目录挂载到一起,形成一个虚拟文件系统。每一层文件系统被称为一层 layer,联合文件系统可以对每一层文件系统设置三种权限,只读(readonly)、读写(readwrite)和写出(whiteout-able),但是 docker 镜像中每一层文件系统都是只读的

构建镜像的时候,从一个最基本的操作系统开始,每个构建的操作都相当于做一层的修改,增加了一层文件系统。一层层往上叠加,上层的修改会覆盖底层该位置的可见性,就像上层把底层遮住了一样。使用时只会看到一个完全的整体,不知道里面有几层,也不清楚每一层所做的修改是什么

二、镜像命令

2.1 docker image

列出本地镜像

docker images [OPTIONS] [REPOSITORY[:TAG]]
# 别名
docker image ls, docker image list
  • -a:列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)
  • --digests:显示镜像的摘要信息
  • -f:显示满足条件的镜像
  • --format:指定返回值的模板文件
  • --no-trunc:显示完整的镜像信息
  • -q:只显示镜像 ID

2.2 docker tag

标记某一镜像,将其归入某一仓库

docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
# 别名
docker image tag

2.3 docker rmi

删除镜像

docker rmi [OPTIONS] IMAGE [IMAGE...]
# 别名
docker image rm, docker image remove
  • -f:强制删除
  • --no-prune:不移除该镜像的过程镜像,默认移除

2.4 docker save 

将指定镜像保存为tar归档文件

docker save [OPTIONS] IMAGE [IMAGE...]
# 别名
docker image save
  • -o:输出到的文件

2.5 docker load

导入使用docker save命令导出的镜像

docker load [OPTIONS]
# 别名
docker image load
  • --input,-i:指定导入的文件,代替 STDIN
  • --quiet,-q:精简输出信息

3.6 docker image inspect

查看镜像的详细信息

docker image inspect [OPTIONS] IMAGE [IMAGE...]

docker inspect 会自动检查是镜像还是容器然后显示相应信息

3.7 docker history

显示镜像历史

docker history [OPTIONS] IMAGE
# 别名
docker image history
  • -H , --human:大小和日期采用人容易读的格式展现
  • --no-trunc:显示全部信息,不要隔断
  • ○ -q,--quiet:只显示镜像 id 信息

3.8 docker import

从归档文件中创建镜像

docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
# 别名
docker image import
  • -c:应用 docker 指令创建镜像
  • -m:提交时的说明文字

3.9 docker image prune

删除不使用的镜像

docker image prune [OPTIONS]
  • -a,--all:删除全部不使用的镜像
  • --filter filter:指定过滤条件
  • -f,--force:不提示是否删除

3.10 docker build

docker build命令用于使用Dockerfile创建镜像

docker build [OPTIONS] PATH | URL | -
  • --build-arg=[]:设置镜像创建时的变量
  • -f:指定要使用的 Dockerfile 路径
  • --label=[]:设置镜像使用的元数据
  • --no-cache:创建镜像的过程不使用缓存
  • --pull:尝试去更新镜像的新版本
  • --quiet,-q:安静模式,成功后只输出镜像 ID
  • --tag,-t:镜像的名字及标签,通常 name:tag 或者 name 格式;可以在一次构建中为一个镜像设置多个标签
  • --network:默认default。在构建期间设置 RUN 指令的网络模式

三、实际操作案例

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GG_Bond20

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值