1. 程式人生 > >docker 2 docker介紹

docker 2 docker介紹

nbsp 否則 rsquo 完整 不同 應用 運維人員 docker容器 影響

docker是基於go語言實現的雲開源項目

docker的主要目標是‘build ,ship and run any app,anywhere’,也就是說通過對應用程序組件的封裝,分發,部署,運行等生命周期的管理。使用戶的app(可以是一個web應用程序或者數據庫應用等)及其運行環境能夠做到‘一次封裝,到處運行’。

linux容器技術的出現解決了這個問題。而docker就是基於他的基礎上發展過來的。將應用運行到docker容器上面,而docker容器在任何操作系統上都是一致的,這就是實現跨平臺跨服務器。只需要一次配置好環境,換到別的機子上就可以一鍵部署好,大大簡化了操作。

docker的中文網站: http://docker-cn.com

以後運維就裝個docker環境,然後開發把他的容器給運維人員,運維人員把容器放在docker環境上就算部署完成了。

下面我們討論下docker和傳統的虛擬機有什麽不同

虛擬機(virtual machine)就是帶環境安裝的一種解決方案。它可以在一種操作系統裏面運行另外一種操作系統,比如在windows系統裏面運行linux系統。應用程序對此毫無感知,因為虛擬機看上去跟真實系統一模一樣。而對於底層系統來說,虛擬機就是一個普通文件,不需要了就刪除,對其他部分毫無影響。這類虛擬機完美的運行了另外一套系統,能夠使應用程序,操作系統和硬件三者之間的邏輯不變

虛擬機的缺點:

1、資源占用多 ;2、啟動慢;

由於前面虛擬機存在的這些缺點,linux發展出了另一種虛擬化技術:Linux容器(Linux container,縮寫為LXC)

Linux容器不是模擬一個完整的操作系統 ,而是對進程進行隔離。有了容器,就可以將軟件運行所需要的所有資料打包到一個隔離的容器中。容器與虛擬機不同,不需要捆綁一整套操作系統,只需要軟件工作所需要的庫資源和設置。系統因此而變得高效輕量並保證部署在任何環境中的軟件都能始終如一的運行。

較了docker和傳統虛擬化方式之間的不同之處:

a)傳統虛擬機技術是虛擬出一整套硬件後,在其上運行一個完整的操作系統,在該系統上再運行所需要的應用進程;

b) 而容器內的應用進程直接運行,容器內沒有自己的內核,而且也沒有進行硬件虛擬 。因為容器要比傳統虛擬機更為輕便。

c) 每個容器之間互相隔離,每個容器有自己的文件系統,容器之間進程不會互相影響。

畫外音:docker啟動是秒級的,傳統虛擬機啟動是分鐘級的;另外docker是一個精簡版、高度濃縮的小型Linux系統。

docker官網: http://www.docker.com (國外網站,訪問速度太慢)

docker官方文檔:http://docs.docker.com

docker中文網站: https://www.docker-cn.com

docker鏡像下載地址:https://hub.docker.com(國外網站,訪問速度太慢,用阿裏雲加速)

來自 “ ITPUB博客 ” ,鏈接:http://blog.itpub.net/28916011/viewspace-2212830/,如需轉載,請註明出處,否則將追究法律責任。

docker 2 docker介紹