欢迎光临
我们一直在努力

【Docker】知识一

目录

 一、什么是容器?

1.容器技术的本质

1.1 Namespace

1.2 Cgroups

2.容器运行时

3.容器镜像

4.容器技术并非 Docker 独有

5.为什么要用容器?

二、什么是 Docker?

1.Linux 的 Namespace、CGroups 和 UnionFS 三大技术支撑了 Docker 的实现。

1.1 Namespace(命名空间)

1.2 CGroups(Control Group 控制组)

1.3 UnionFS(联合文件系统)

2.Docker 的核心组件

2.1 Image 镜像

2.2 Container 容器

2.3 Repository 仓库

3.Docer 和 Overlay2、UnionFS


 一、什么是容器?

容器(Container)是一种轻量级的虚拟化技术,核心目标是通过 “隔离” 和 “打包”,让应用程序及其依赖(代码、运行时、库、配置等)能够在独立、一致的环境中运行,且与宿主环境和其他应用互不干扰。

1.容器技术的本质

容器 = CGroup + Namespace + Rootfs + 容器引擎。

容器就是利用 Linux 内核提供的 CGroup 和 Namespace 等技术,将一系列进程隔离在相互独立的环境中进行运行。

在现代的 Linux 发行版中,任何一组进程都是容器化的:/proc/PID/cgroup 文件保存了进程所属的控制组。/proc/PID/status 文件保存了进程的 Capability 信息。

/proc/PID/ns 保存了进程的命名空间。

1.1 Namespace

实现 “资源隔离”,让容器内的应用看到的是独立的进程 ID、网络栈、文件系统、用户空间。

1.2 Cgroups

实现 “资源限制”,为容器分配固定的 CPU、内存、磁盘 I/O 配额。

2.容器运行时

负责容器生命周期的核心工具,分为低层运行时(如runC)和高层运行时(如Containerd)。低层运行时直接调用内核创建隔离环境,高层运行时负责镜像管理、网络等完整功能。

赞(0)
未经允许不得转载:171主机测评 » 【Docker】知识一
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址