Windows php Python 开源 centos Firefox google mysql Ubuntu Android shell 微软 java wordpress 程序员 编程 linux 云计算 nginx apache

雲計算之docker篇

由於最近公司開始著手做雲計算,自己有幸參與整個項目的全過程,所以呢,準備在blog中記錄整個項目從無到有,從測試到生產的全過程,希望對自己的每一步進行一個記錄以及在項目中遇到的坑和如何解決。希望大家能夠在此找到一點點借鑒。

==================華麗分割線====================================================================

什麽是docker?

docker的字面意思是碼頭工人,與集裝箱有關,那麽docker就可以理解為是一個集裝箱(容器)。

詳細的說:

dockers是dockers.inc  公司開源的一個基於LXC技術之上構建的container容器引擎(說個題外話 openstack基於KVM ,docker基於LXC),源代碼托管在GITHUB上,基於GO 語言並遵從apache2.0 協議開源。(可以商業,改吧改吧就可以賣錢了)。

docker是通過內核虛擬化技術((namespaces及cgroups等),KVM呢是通過硬件虛擬化技術,CPU支持的。)來提供容器的資源隔離與  安全保障等。

在非Linux平臺是沒法使用docker的,因為他是基於內核技術來實現資源隔離和安全保障的。

由於dockers通過操作系統層的虛擬化實現隔離,所以docker容器在運行的時候,不需要類似虛擬機(VM)額外的操作系統開銷,提高了資源的利用率。

docker官網在此 https://www.docker.com/ ,截個圖來說明一下docker的三大理念。

云计算之docker篇如上图所

示:Build  ,ship ,Run( 構建,運輸, 運行)。

這就是docker的三大核心理念,認為一個東西我構建上了,放在某個地方就可以運行起來,可以用JAVA來進行一個對比,怎麽說呢?我有JVM虛擬機,一次構建,備考之後到處運行。但是呢,也有不同的地方,因為docker裏面運行的是一個應用(apache ,Nginx,tomcat),  它的構建是基於docker的鏡像,可以基於這個鏡像起容器.

延伸阅读

评论