Docker 的核心概念
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
| ![]() |
1、镜像 (Image)
定义:镜像是一个只读的模板,包含了运行应用所需的所有内容:代码、运行时、库文件、环境变量和配置文件。
类比理解:镜像就像是一个安装程序或者模板,它定义了应用运行所需的一切,但本身不能直接运行。
2、容器 (Container)
定义:容器是镜像的运行实例,是一个轻量级、可移植的执行环境。
类比理解:如果镜像是类,那么容器就是对象实例。一个镜像可以创建多个容器,就像一个类可以创建多个对象。
3、仓库 (Repository)
定义:仓库是存储和分发镜像的地方,可以包含一个镜像的多个版本。
Docker 与虚拟机的区别
特性 | 虚拟机 | Docker容器 |
---|---|---|
隔离级别 | 硬件级别虚拟化 | 操作系统级别虚拟化 |
操作系统 | 每个VM需要完整OS | 共享宿主机OS内核 |
资源占用 | 重量级,占用较多资源 | 轻量级,资源占用少 |
启动时间 | 分钟级别 | 秒级别 |
性能开销 | 较大 | 接近原生性能 |
镜像大小 | GB级别 | MB级别 |
![]() |
Docker Compose 是什么?
Docker Compose 是 Docker 官方提供的**“多容器编排工具”,让你可以用一个 YAML 文件把多个容器**(服务、网络、卷)一键定义、一键启动、一键停止。
Docker Compose 是 “Docker 的多容器管家”,写一份 docker-compose.yml,就能一次性启动整个应用栈。