docker容器初识
一、容器与虚拟化
(1.1)dokcer中基本概念
三个概念,镜像仓库、镜像(image)、容器(container)
- 镜像:可以理解成模板
- 镜像仓库:很多模板存放的位置
- 容器:基于模板实际使用的具体程序。
如上图,镜像的意义就是绿色版程序。用过的都知道,绿色版程序拿过来执行运行就可以用,无需安装、加载别的库、安装其他依赖包和软件。
容器是什么:
定义:容器是 镜像 image 运行时的实力
通俗的理解:软件界的集装箱(封装、隔离),只需要知道有个集装箱,不关心容器里的内容,这仅仅是一种标准的运输方式。
(1.2)container 与 VM 的区别
大层面的对比:
VM:需要虚拟化层面的软件,与系统继承,如EXSI、vmware等,此类软件通过虚拟化技术的Hypervisor曾实现对资源的隔离。
container:需要挂在操作系统上,如 linux 等。利用 Linux 内核 namespace/cgroup 实现资源隔离。
详细使用对比:
(1.3)OCI标准规范
意思就是,遵循某个统一规范,比如镜像的制作,不管是docker 还是 podman 都可以使用。
通俗来讲,比如word 和 wps,文本文档遵循某个规范那么尽管软件不同均可以根据该规范打开、识别、使用。
(1.4)docker engine
cs结构,通过docker client 程序来访问 docker server,相关操作命令通过 REST API 方式访问控制。
docker引擎主要是进行4个大点,docker 网络、docker 存储、docker 容器、docker 镜像。
(1.5)docker 使用流程架构
三个概念,镜像仓库、镜像(image)、容器(container)
- 镜像:可以理解成模板
- 镜像仓库:很多模板存放的位置
- 容器:基于模板实际使用的具体程序。
如下图。