第 5 章 · 容器化与 Docker 第 4 章的 Shell 脚本解决"单机上的命令流",本章的容器解决"跨机器的环境交付"。容器把应用连同依赖、运行时环境打包成自包含的轻量单元,是 DevOps 交付的最小载体:镜像分层模型解释了"为什么容器小、启动快";Dockerfile 定义了"镜像如何被构建";网络、存储与生产实践回答"容器如何真正跑在线上"。 解剖坐标 学习目标 完成本章后,你将能够: 说清容器与虚拟机的本质区别,以及 namespaces 与 cgroups 的分工 理解镜像的分层模型:只读层、可写容器层、层共享与构建缓存 写出规范的 Dockerfile,分清 RUN/CMD/ENTRYPOINT、COPY/ADD、Exec form/Shell form
第 4 章的 Shell 脚本解决"单机上的命令流",本章的容器解决"跨机器的环境交付"。容器把应用连同依赖、运行时环境打包成自包含的轻量单元,是 DevOps 交付的最小载体:镜像分层模型解释了"为什么容器小、启动快";Dockerfile 定义了"镜像如何被构建";网络、存储与生产实践回答"容器如何真正跑在线上"。
完成本章后,你将能够:
容器 vs 虚拟机、镜像与层(只读层/可写容器层/层共享)、digest 与悬空镜像、多架构镜像、构建流程与缓存机制,以及隔离原理:namespaces 管"能看到什么"、cgroups 管"能用多少"。
Dockerfile 关键指令(FROM/RUN/CMD/ENTRYPOINT/COPY/ADD/WORKDIR/EXPOSE/ENV/USER)、CMD 与 ENTRYPOINT 的拼接规则、Exec form 与 Shell form 混用的陷阱、构建上下文与 .dockerignore、容器生命周期命令与 docker run 完整链路、重启策略四兄弟。
CNM/CNI 两大网络标准、端口映射与容器间通信、存储三兄弟(volume/bind mount/tmpfs)、Docker Compose 多容器编排、多阶段构建、安全五条铁律、Rootless 容器与 OCI 标准。