瞭解用於 Linux 和 Windows 容器的 Docker “容器主機”與“容器作業系統”
讓我們來探討一下“容器主機”和“容器作業系統”之間的關係,以及它們在 Linux 和 Windows 容器之間的區別。
一些定義
- 容器主機:也稱為主機作業系統。主機作業系統是 Docker 客戶端和 Docker 守護程式在其上執行的作業系統。在 Linux 和非 Hyper-V 容器的情況下,主機作業系統與執行中的 Docker 容器共享核心。對於 Hyper-V,每個容器都有自己的 Hyper-V 核心。
- 容器作業系統:也被稱為基礎作業系統。基礎作業系統是指包含作業系統如 Ubuntu、CentOS 或 windowsservercore 的映象。通常情況下,你將在基礎作業系統映象之上構建自己的映象,以便可以利用該作業系統的部分功能。請注意,Windows 容器需要一個基礎作業系統,而 Linux 容器不需要。
- 作業系統核心:核心管理諸如記憶體、檔案系統、網路和程式排程等底層功能。
如下的一些圖
在上面的例子中:
- 主機作業系統是 Ubuntu。
- Docker 客戶端和 Docker 守護程式(一起被稱為 Docker 引擎)正在主機作業系統上執行。
- 每個容器共享主機作業系統核心。
- CentOS 和 BusyBox 是 Linux 基礎作業系統映象。
- “No OS” 容器表明你不需要基礎作業系統以在 Linux 中執行一個容器。你可以建立一個含有 scratch 基礎映象的 Docker 檔案,然後執行直接使用核心的二進位制檔案。
- 檢視這篇文章來比較基礎 OS 的大小。
在上面的例子中:
- 主機作業系統是 Windows 10 或 Windows Server。
- 每個容器共享主機作業系統核心。
- 所有 Windows 容器都需要 nanoserver 或 windowsservercore 的基礎作業系統。
在上面的例子中:
- 主機作業系統是 Windows 10 或 Windows Server。
- 每個容器都託管在自己的輕量級 Hyper-V 虛擬機器中。
- 每個容器使用 Hyper-V 虛擬機器內的核心,它在容器之間提供額外的分離層。
- 所有 Windows 容器都需要 nanoserver 或 windowsservercore 的基礎作業系統。
幾個好的連結
via: http://floydhilton.com/docker/2017/03/31/Docker-ContainerHost-vs-ContainerOS-Linux-Windows.html
作者:Floyd Hilton 譯者:geekpi 校對:wxy
相關文章
- 瞭解用於 Linux 和 Windows 容器的 Docker “容器LinuxWindowsDocker
- Linux容器與Docker的對比LinuxDocker
- 容器和容器映象的區別,您真的瞭解嗎
- Windows Server 2016系統的Docker容器初體驗WindowsServerDocker
- Kubernetes vs Docker:瞭解 2021 年的容器Docker
- 2.1.1. CDB Root容器和系統容器
- Docker容器與虛擬化技術:OpenEuler 部署 docker容器應用Docker
- docker容器跨主機網路overlayDocker
- 比較Windows和Linux SQL容器WindowsLinuxSQL
- Docker容器執行時許可權和Linux系統功能DockerLinux
- 作業系統已死?容器勝出!作業系統
- 容器Docker詳解Docker
- Linux 提權-Docker 容器LinuxDocker
- 淺析linux容器--DockerLinuxDocker
- Docker 容器監控系統初探Docker
- 主機和Docker容器之間的檔案互傳方法Docker
- 容器引擎Docker和容器編排kubernetes如何優雅的收集容器日誌Docker
- Docker的安裝與容器應用部署Docker
- 1.03 docker的映象和容器Docker
- 應用容器引擎-DockerDocker
- Docker容器Docker
- docker容器dockerfile詳解Docker
- docker 安裝 Redis 主從容器DockerRedis
- docker Portainer 作為容器的 GUI 管理DockerAIGUI
- 深入瞭解 Docker:革命性的容器化技術Docker
- 把 Windows 裝進 Docker 容器裡WindowsDocker
- docker 容器的使用與檢視Docker
- docker容器與映象的區別Docker
- Docker宿主機和容器之間的繫結Docker
- Docker容器的搭建Docker
- Docker的容器管理Docker
- Docker--容器和映象的使用Docker
- .NET Core容器化之多容器應用部署(Docker-Compose)Docker
- 如何在Docker容器中的Linux系統(Ubuntu + Centos Linux)裡面使用systemctlDockerLinuxUbuntuCentOS
- 關於Linux系統和Windows系統你瞭解多少?LinuxWindows
- Docker容器和虛擬機器區別Docker虛擬機
- Docker Compose 多容器應用Docker
- 2.1.1 CDB root 和系統容器
- docker 容器互通Docker