Docker知识点汇总——AI教你学Docker
Docker & Docker Compose 全面知识点梳理
一、Docker 基础知识
1.1 Docker 概念
- 什么是容器、镜像、仓库、Docker 引擎
- 容器与虚拟机的区别
- Docker 的应用场景与优势
1.2 Docker 安装与配置
- 各操作系统(Linux、Windows、macOS)上的安装方法
- 配置加速器、代理
- Docker 的基本配置文件(daemon.json)
1.3 镜像(Image)
- 镜像的结构(分层、只读)
- 镜像的获取(docker pull)、查看(docker images)、删除(docker rmi)
- 制作自己的镜像(docker build、Dockerfile 详解)
- 镜像的导入导出(docker save/load,docker import/export)
- 镜像标签与版本管理
1.4 容器(Container)
- 容器的生命周期(创建、启动、停止、删除、重启、挂起等)
- 容器的基本操作命令(docker run/start/stop/restart/rm/exec/attach/logs)
- 容器后台与前台运行
- 容器的端口映射、数据卷挂载(-p, -v)
- 容器资源限制(CPU、内存、Block IO、ulimit)
- 容器互联(link、network)
1.5 Docker 网络
- 网络模式(bridge、host、none、container、overlay、macvlan)
- 自定义网络的创建与管理(docker network)
- 网络隔离、跨主机通信
- DNS配置、端口映射原理
1.6 Docker 数据管理
- 容器数据卷(Volumes)
- 数据卷类型(匿名卷、具名卷、主机挂载)
- 数据卷的生命周期
- 数据卷的迁移与备份
- 数据卷插件
1.7 Docker 仓库(Registry)
- Docker Hub 的使用
- 私有仓库搭建(registry 服务)
- 镜像推送与拉取(docker push/pull)
- 镜像安全与访问控制
1.8 Dockerfile
- Dockerfile 基本结构与指令详解(FROM, RUN, CMD, ENTRYPOINT, COPY, ADD, ENV, EXPOSE, VOLUME, WORKDIR, USER, LABEL, HEALTHCHECK, ARG, ONBUILD, SHELL)
- 多阶段构建(multi-stage build)
- 镜像构建优化(减少层数、缓存利用、最小化镜像体积)
- 常用最佳实践
1.9 容器日志与监控
- 容器日志管理(docker logs,日志驱动)
- 日志收集与持久化
- 容器监控(docker stats、cAdvisor、Prometheus 等)
1.10 容器安全
- 镜像安全扫描(如 trivy、clair)
- 最小权限原则(USER、cap drop/add、seccomp、AppArmor、SELinux)
- 镜像签名与可信发布
- 网络安全与隔离
二、Docker 进阶与实战
2.1 进阶命令与参数
- docker inspect、docker diff
- 容器 commit 与变更管理
- docker cp(文件拷贝)
- docker update(动态调整资源)
2.2 多容器应用与编排
- Compose、Swarm、Kubernetes 等编排工具简介
三、Docker Compose 专题
3.1 Docker Compose 基础
- Compose 的作用与优势
- 安装与版本管理(v1/v2 差异)
3.2 docker-compose.yml 文件详解
- 基本结构(version、services、networks、volumes)
- 服务定义(image/build、container_name、command、environment、ports、volumes、depends_on、restart、healthcheck 等)
- 多环境支持(.env 文件、环境变量注入)
- 多 compose 文件合并与覆盖(-f 参数)
3.3 Compose 常用命令
- up/down/restart/stop/start/ps/logs/exec/build/config
- detach 模式与前台模式
- 服务扩展与缩容(scale)
3.4 Compose 网络与数据管理
- 自定义网络
- 多服务间互通
- 持久化数据卷的高级用法
3.5 Compose 项目结构与实践
- 项目目录规范
- 与 CI/CD 集成
- 版本管理与团队协作
3.6 Compose 高级用法
- depends_on 的高级用法与启动顺序
- healthcheck 结合 restart 策略
- 多环境配置(开发/测试/生产)
- Compose 文件模板化(扩展 Compose、环境占位符)
四、Docker 与生产实践
4.1 镜像发布与自动化构建
- 利用 CI/CD 自动构建与发布镜像
- 多架构镜像构建(buildx)
4.2 大规模部署与服务编排
- Swarm 集群
- Kubernetes 集群入门
- 与微服务架构结合
4.3 性能优化
- 镜像瘦身与多阶段构建
- 容器启动速度优化
- 网络与存储优化
4.4 故障排查与调优
- 常见问题分析
- 容器/网络/数据卷调试技巧
- 资源瓶颈排查
4.5 生产环境安全加固
- 镜像源可信
- 镜像内容合规性
- 容器运行时安全(如 seccomp、AppArmor)
五、常见问题与最佳实践
- 镜像最小化与多阶段构建
- 配置敏感信息(如 secrets)管理
- 日志收集与监控体系建设
- 备份与数据恢复策略
- 容器生命周期管理
- 生产环境配置与参数优化
六、学习资料与社区
- 官方文档:Docker Docs、Compose Docs
- 推荐书籍:《Docker 从入门到实践》、《深入理解 Docker》
- 社区与论坛:Docker 官方社区、Stack Overflow、GitHub
建议学习路线:
- 完成 Docker 基础命令和镜像/容器操作;
- 掌握 Dockerfile 编写和镜像优化;
- 学习 Docker Compose,实现多容器编排;
- 深入理解网络、卷、数据管理;
- 掌握安全、监控、日志等运维知识;
- 结合 CI/CD、集群编排实现生产级部署。