Categories

Docker

Docker是一個開放原始碼的開放平臺軟體,Docker容器與虛擬機器類似,但二者在原理上不同。容器是將作業系統層虛擬化,虛擬機器則是虛擬化硬體,因此容器更具有可攜式性、高效地利用伺服器。容器更多的用於表示軟體的一個標準化單元。由於容器的標準化,因此它可以無視基礎設施(Infrastructure)的差異,部署到任何一個地方。另外,Docker 也為容器提供更強的業界的隔離相容。Docker 利用 Linux 核心中的資源分離機制,例如 cgroups,以及 Linux 核心命名空間(namespaces),來建立獨立的容器(containers)。這可以在單一 Linux 實體下運作,避免啟動一個虛擬機器造成的額外負擔。Linux 核心對命名空間的支援完全隔離了工作環境中應用程式的視野,包括行程樹、網路、使用者ID與掛載檔案系統,而核心的 cgroup 提供資源隔離,包括CPU、記憶體、block I/O與網路。