01.Docker 起源
- 00.Docker 常用命令
- 01.Docker 起源
- 02.Docker 核心概念
- 03.Docker 入门
- 04.Dockerfile
- 05.Docker Compose
- 06.实战案例
- 07.进阶与最佳实践
- 08.总结
- 09.附录 Docker Desktop
- 10.附录 Docker Desktop 代理
01.Docker 起源
1. 软件部署的痛点
问题一:环境不一致
问题二:依赖地狱
问题三:资源浪费
2. 虚拟化技术的演进
为了解决这些问题,技术不断进化:
物理机时代(远古)
- 一台服务器跑一个应用;资源利用率极低;扩展困难
虚拟机时代(VMware、VirtualBox)
- 一台物理机上运行多个虚拟机;每个虚拟机都有完整的操作系统;资源占用大,启动慢(分钟级)
容器时代(Docker)
- 共享宿主机内核;轻量级,启动快(秒级);资源占用小
3. Docker 的诞生
2013 年,一家名叫 dotCloud 的 PaaS 公司(后改名为 Docker Inc.)开源了他们的内部项目 Docker,从此改变了软件部署的世界。
为什么 Docker 能成功?
- 标准化打包:就像国际海运的集装箱,不管里面装什么货物,外面都是标准尺寸
- 轻量级:共享内核,秒级启动
- 可移植性:“Build once, run anywhere”
- 版本控制:镜像可以像代码一样版本化管理
- 生态丰富:Docker Hub 上有海量现成的镜像
Docker 的核心优势
| 特性 | 传统部署 | Docker 部署 |
|---|---|---|
| 环境一致性 | 手动配置,容易出错 | 镜像保证完全一致 |
| 启动速度 | 分钟级 | 秒级 |
| 资源占用 | GB 级 | MB 级 |
| 隔离性 | 需要虚拟机 | 容器原生支持 |
| 扩展能力 | 复杂 | 简单,一行命令 |

