回覆列表
-
1 # 許三少14
-
2 # 留下你的美m
沒有 Docker 的時代,我們會使用硬件虛擬化(虛擬機)以提供隔離。這裡,虛擬機通過在操作系統上建立了一個中間虛擬軟件層 Hypervisor ,並利用物理機器的資源虛擬出多個虛擬硬件環境來共享宿主機的資源,其中的應用運行在虛擬機內核上。
但是,虛擬機對硬件的利用率存在瓶頸,因為虛擬機很難根據當前業務量動態調整其占用的硬件資源,因此容器化技術得以流行。
其中,Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,
docker是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的鏡像中,然後發布到任何流行的 Linux或Windows 機器上,也可以實現虛擬化。
容器是完全使用沙箱機制,相互之間不會有任何接口。
一個完整的docker有以下幾個部分組成:
1.DockerClient客戶端
2.Docker Daemon守護進程
3.Docker Image鏡像
4.DockerContainer容器
docker是 PaaS 提供商 dotCloud 開源的一個基於 LXC 的高級容器引擎,源代碼託管在Github上, 基於go語言並遵從Apache2.0協議開源。
docker自2013年以來非常火熱,無論是從github上的代碼活躍度,還是Redhat在RHEL6.5中集成對docker的支持, 就連Google的 Compute Engine 也支持 docker 在其之上運行。