第 2 部 镜像:从拉取、构建到清理搬运


第 2 部 镜像:从拉取、构建到清理搬运

章节摘要:镜像是 Docker 词典里最核心的名词——容器由它而跑,磁盘被它吃满,仓库因它而存在。本部把镜像相关的命令收拢成三组词条:查与拉(pull、images、inspect、history)、造(build 及其参数现场)、清与搬(rmi、prune、save、load)。每个词条按"语法—义项—使用现场"展开,重点放在输出的读法:分层是什么、悬空镜像从哪来、构建缓存为何失效。读完本部,镜像对你不再只是一个名词,而是一组随取随用、随坏随修的操作动作。

学习目标

阅读完本部,你应当能够:

  1. 用 docker pull 拉取指定标签的镜像,并解释输出里每层 Pull complete 与层共享的含义。
  2. 用 docker images 与 docker image inspect 读出镜像的标签、体积、摘要与分层结构。
  3. 用 docker history 追溯镜像里每一层分别由哪条指令生成、占多大空间。
  4. 组装 docker build 命令,正确使用 -t、-f、--no-cache、--build-arg 等高频选项。
  5. 解释构建缓存的命中与失效规则,并据此安排 Dockerfile 的指令顺序。
  6. 用 rmi 与 image prune 清理镜像,说清 dangling(悬空)与 unused(未使用)的区别。
  7. 用 save 与 load 把镜像打成 tar 包搬运进离线环境,并核对摘要信息。

核心概念速览

金句:镜像是一叠只读层,本部的每个动词都在对这叠层做加法、减法或者打包搬运。

子章节导航

2.1 镜像的拉取与查看词条:pull、images、inspect、history 四条命令的完整词条。重点是读输出:拉取时层为何有的下载有的复用,列表里 SIZE 为什么比磁盘占用看起来大,history 如何暴露每层的来路。

2.2 build 构建命令现场:docker build 的完整现场。从一条最小构建命令出发,讲清构建上下文、标签命名、缓存命中规则与 --no-cache、--build-arg 等义项的适用时机,附缓存失效排查会话。

2.3 镜像清理与搬运词条:rmi、image prune 负责减法,save、load 负责搬运。悬空镜像与未使用镜像的判定差异决定清理命令怎么选,导出归档则是把镜像带进无外网环境的正规通道。

子章节之间的逻辑关系

三节覆盖镜像从进到出的一生:先拿到镜像(2.1 拉取或 2.2 构建),再观察它(2.1 的查看词条),最后处置它(2.3 清理或搬运):

+----------------+ +----------------+ +----------------+ | 2.1 拉取与查看 | --> | 2.2 build 构建 | --> | 2.3 清理与搬运 | | pull/images | | 上下文与缓存 | | rmi/prune | | inspect/history| | -t / -f | | save/load | +----------------+ +----------------+ +----------------+ | | | +---- 得到的镜像交给叁部运行,打标后由肆部推送 ----+ ​

前置知识与后续延伸

前置:壹部的环境验证已通过、会用 --help 查参数表。本部出现的"层""标签"概念都在词条现场里就地解释,不要求先修容器原理。延伸:本部产出的镜像名是叁部所有 run 命令的第一个位置参数;2.2 的构建缓存思想在柒部 Compose 的 build 字段里原样复用;2.3 的清理词条在捌部治理现场会与容器、卷的 prune 命令合并成一套例行动作。可自测的过关线:给你一个陌生镜像名,你能说出它的体积、层数、每层来路,并在磁盘告警时判断哪些能删、怎么删。

作者与出处
原作者:灏天文库
来源:平台策划编纂
整理人: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U