DocKer.io:線上雲端計算分散式系統平臺是一個允許開發者們將他們的應用打包放在雲端的“容器”中,無需再修改就可以釋出到任何流行的 Linux 機器上。它利用Linux的LXC、AUFU、Go語言、cgroup實現了資源的獨立,可以很輕鬆的實現檔案、資源、網路等隔離,其最終的目標是實現類似PaaS平臺的應用隔離。
Docker 允許開發者們將他們的應用打包放在雲端的“容器”中,無需再修改就可以釋出到任何流行的 Linux 機器上。由於採用沙盒機制,各應用之間沒有任何介面,所以不用擔心它們會相互干擾。也同樣因為這點,Docker 內的應用可以很容易地執行在各個機器和資料中心上,最重要的是,它們不依賴任何語言、框架或者包裝系統。
Docker是一個功能強大的自動化分散式系統:大規模的Web部署、資料庫叢集、持續部署系統、私有PaaS、面向服務的體系結構等。Docker是一種增加了高階API的LinuX Container(LXC)技術,提供了能夠獨立執行Unix程序的輕量級虛擬化解決方案。它提供了一種在安全、可重複的環境中自動部署軟體的方式。
Docker 提供了一個可以執行你的應用程式的封套(envelope),或者說容器。它原本是 dotCloud 啟動的一個業餘專案,並在前些時候開源了。它吸引了大量的關注和討論,導致 dotCloud 把它重新命名到 Docker Inc。它最初是用 Go 語言編寫的,它就相當於是加在 LXC(LinuX Containers,linux 容器)上的管道,允許開發者在更高層次的概念上工作。
Docker 擴充套件了 Linux 容器(Linux Containers),或著說 LXC,通過一個高層次的 API 為程序單獨提供了一個輕量級的虛擬環境。Docker 利用了 LXC, cgroups 和 Linux 自己的核心。和傳統的虛擬機器不同的是,一個 Docker 容器並不包含一個單獨的作業系統,而是基於已有的基礎設施中作業系統提供的功能來執行的。這裡有一個 Stackoverflow 的答案,裡面非常詳細清晰地描述了所有 Docker 不同於純粹的 LXC 的功能特性
Docker 會像一個可移植的容器引擎那樣工作。它把應用程式及所有程式的依賴環境打包到一個虛擬容器中,這個虛擬容器可以執行在任何一種 Linux 伺服器上。這大大地提高了程式執行的靈活性和可移植性,無論需不需要許可、是在公共雲還是私密雲、是不是裸機環境等等。