了解用于Linux和 Windows容器的Docker“容器主机”与“容器操作系统”

系统 Linux Windows
本文主要来探讨一下“容器主机”和“容器操作系统”之间的关系,以及它们在 Linux 和 Windows 容器之间的区别。

让我们来探讨一下“容器主机”和“容器操作系统”之间的关系,以及它们在 Linux 和 Windows 容器之间的区别。

一些定义

  • 容器主机:也称为主机操作系统。主机操作系统是 Docker 客户端和 Docker 守护程序在其上运行的操作系统。在 Linux 和非 Hyper-V 容器的情况下,主机操作系统与运行中的 Docker 容器共享内核。对于 Hyper-V,每个容器都有自己的 Hyper-V 内核。
  • 容器操作系统:也被称为基础操作系统。基础操作系统是指包含操作系统如 Ubuntu、CentOS 或 windowsservercore 的镜像。通常情况下,你将在基础操作系统镜像之上构建自己的镜像,以便可以利用该操作系统的部分功能。请注意,Windows 容器需要一个基础操作系统,而 Linux 容器不需要。
  • 操作系统内核:内核管理诸如内存、文件系统、网络和进程调度等底层功能。

如下的一些图

 

Linux Containers

在上面的例子中:

  • 主机操作系统是 Ubuntu。
  • Docker 客户端和 Docker 守护进程(一起被称为 Docker 引擎)正在主机操作系统上运行。
  • 每个容器共享主机操作系统内核。
  • CentOS 和 BusyBox 是 Linux 基础操作系统镜像。
  •  “No OS” 容器表明你不需要基础操作系统以在 Linux 中运行一个容器。你可以创建一个含有 scratch 基础镜像的 Docker 文件,然后运行直接使用内核的二进制文件。
  • 查看这篇文章来比较基础 OS 的大小。

 

Windows Containers - Non Hyper-V

在上面的例子中:

  • 主机操作系统是 Windows 10 或 Windows Server。
  • 每个容器共享主机操作系统内核。
  • 所有 Windows 容器都需要 nanoserver 或 windowsservercore 的基础操作系统。

 

Windows Containers - Hyper-V

在上面的例子中:

  • 主机操作系统是 Windows 10 或 Windows Server。
  • 每个容器都托管在自己的轻量级 Hyper-V 虚拟机中。
  • 每个容器使用 Hyper-V 虚拟机内的内核,它在容器之间提供额外的分离层。
  • 所有 Windows 容器都需要 nanoserver 或 windowsservercore 的基础操作系统。

几个好的链接

责任编辑:庞桂玉 来源: Linux中国
相关推荐

2015-11-18 14:22:02

2015-06-09 17:14:11

容器LinuxLinux原子主机

2021-12-25 23:25:04

LinuxDocker容器

2023-09-26 00:40:35

Docker容器操作命令

2023-09-15 10:15:43

Docker网络

2020-01-09 15:28:30

KubernetesDocker:容器

2022-01-24 17:08:33

Linux容器Docker

2019-11-25 11:12:18

企业应用软件容器操作系统

2019-07-08 08:59:41

Docker容器主机

2020-08-20 08:06:13

操作系统AWS谷歌

2022-03-10 08:24:17

Docker容器SaaS

2023-05-30 14:56:18

Docker开发容器

2019-07-16 14:44:52

DockerMySQL操作系统

2022-07-25 14:24:53

Docker容器安全

2015-07-07 18:01:07

容器操作系统应用管理

2017-02-14 16:39:56

docker容器化主机

2015-02-05 11:28:22

Docker应用程序容器操作系统级虚拟化

2024-01-08 18:48:21

2019-09-05 19:28:23

Docker程序员MySQL

2022-07-18 11:13:07

容器安全Docker
点赞
收藏

51CTO技术栈公众号