镜像:应用的打包快照(代码 + 依赖 + 配置);容器:镜像的运行实例;仓库:镜像的存储分发。理解这三者,Docker 就不再神秘。
有了 Docker,环境差异、依赖冲突、部署复杂度都被镜像统一了。
核心价值:开发、测试、生产环境一致,部署从“玄学”变成“确定”。
高频使用的 Docker 操作。
build、pull、push、tag。
run、start、stop、logs。
prune 清理无用资源。
网络模式与数据卷。
多容器编排与启动。
exec、inspect、logs。
从写 Dockerfile 到上线。
基于基础镜像、拷贝代码、安装依赖、声明启动命令。
本地构建并测试,利用分层缓存提升构建速度。
编排应用 + 数据库 + 缓存等多服务,一条命令起全套。
推送到仓库、服务器拉取运行,配合 CI/CD 自动化。
写出高效镜像的规范。
| 要点 | 说明 |
|---|---|
| 小基础镜像 | 用精简镜像减小体积 |
| 合理分层 | 善用缓存,把变化少的放前面 |
| 多阶段构建 | 构建与运行分离,产物更小 |
| 安全实践 | 最小权限、不存敏感信息 |
| 健康检查 | 声明健康检查便于编排 |
多阶段构建 + 精简基础镜像 + 清理无用依赖,通常能大幅瘦身。
用数据卷(volume)持久化数据,数据库等有状态服务务必挂卷。
容器共享宿主内核、更轻更快;虚拟机有完整 OS、隔离更强。日常应用容器足够。
单机/小规模用 Compose 即可;多机、高可用、弹性要求高时再上 K8s。