Docker是什麼

不要亂摸發表於2018-01-24

Docker是世界上領先的軟體集裝箱化平臺。它靈活、可移植、安全、節省成本。

Container是一個標準化的軟體單元。

About Containers

Package software into standardized units for development, shipment and deployment

一個容器映象是一個輕量級的、獨立的、可以執行的軟體包,其中包含執行這個軟體所必須的:程式碼、執行時環境、系統工具、系統庫、設定等待。無論是這個應用是Linux環境下的還是Windows環境下的都可以,無論什麼環境下,集裝箱化的軟體執行起來總是一樣的。容器將軟體和它周圍的其它軟體隔離開,在相同的基礎設施上執行不同的軟體,容器可以幫助減少衝突。

輕量級

Docker容器執行在單個機器上,它們共享這臺機器的作業系統核心,它們能夠快速啟動,並且佔用很少的計算機和記憶體資源。

標準

Docker容器基於開發的標準,並且支援各大主流的Linux發行版本、Windows版本。

安全

Docker容器之間是隔離的

Containers And VMs

Container虛擬化的是作業系統,而VM虛擬化的是硬體。

容器是app層面的抽象,它把程式碼和它們的依賴一起打包。一臺機器上可以執行多個容器,並且它們共享作業系統核心,而且在不同的使用者空間被隔離。容器比虛擬機器花費更少的空間(容器映象通常只有幾十MBs),而且啟動非常快。

虛擬機器是物理硬體層面的抽象,它的目標是把一個伺服器轉成多個伺服器。一臺物理機上可以執行多個虛擬機器。每個虛擬機器都包含一個作業系統的完全複製,已經一個或多個應用和它們所需的庫。通常一個虛擬機器幾十GBs。虛擬機器啟動比較慢。

 

一句話總結:Docker是平臺,Container是這個平臺中的一個標準的單元。

 

補充一句,我覺得有點像新浪SAE中的容器。

 

參考  https://www.docker.com/what-container

 

 

相關文章