2 回答

TA貢獻1830條經驗 獲得超3個贊
Docker是一種應用容器,你可以把它理解為集裝箱,就是把包括應用和應用的依賴在內的整個環境都打包在一起,這樣安裝部署也方便,同時每個開發人員使用的是統一的版本,不會因為依賴版本不同而踩到坑,也不用費心自己維護版本。
64位Linux上,Docker沒有用虛擬機,所以性能很好。在64位的Linux系統以外的系統上(包括Windows,Mac OS X),Docker利用了虛擬機技術。

TA貢獻2011條經驗 獲得超2個贊
docker相對于全虛擬化和半虛擬化而言,是所謂的操作系統級別的輕量級虛擬化技術。傳統的虛擬化技術要生成一個環境的時間非常久,對于docker來說啟動和銷毀都是秒級的,而且它底層依賴的技術lxc(linux container)完全是內核特性,沒有任何中間層開銷,對于資源的利用率極高性能接近物理機。當然由于現在docker依賴于lxc,所以你只能在Linux上跑它(現在mac osx也支持,但是也只是用了virtualbox搞了個linux虛擬機啊罷了,相信我,現在在mac上使用它沒有任何意義,即使為了docker開發,我也認為vagrant更合適,昨天剛嘗試了一把boot2docker這個mac工具,體驗真是不好)。
題主所謂的不同的系統其實是一個docker維護的鏡像,對于lxc來說這個并不需要,但是docker維護了這套鏡像更方便保存應用環境,做到無依賴的環境分發。另外你說的docker鏡像都很小并不準確,docker的鏡像大小是應用決定的,你可以讓你的鏡像保存任意東西,也就是可以是任意大小的。
docker是不是什么都適合做,目前來看并不是,對于精度要求很高的計費任務來說docker還不合適,但是對于普通的PaaS足夠了,而且docker目前發展很迅速,相信特性的增強會很快。
- 2 回答
- 0 關注
- 913 瀏覽
添加回答
舉報