docker與虛擬機(jī)的區(qū)別是什么?docker的優(yōu)點(diǎn)有哪些?
什么是Docker?docker與虛擬機(jī)的區(qū)別是什么?
Docker 概述
Docker 是一個(gè)開(kāi)源的應(yīng)用容器引擎,讓開(kāi)發(fā)者可以打包他們的應(yīng)用以及依賴(lài)包到一個(gè)可移植的容器中,然后發(fā)布到任何流行的 Linux 機(jī)器上,也可以實(shí)現(xiàn)虛擬化。容器是完全使用沙盒機(jī)制,相互之間不會(huì)有任何接口(類(lèi)似 iPhone 的 app)。幾乎沒(méi)有性能開(kāi)銷(xiāo),可以很容易地在機(jī)器和數(shù)據(jù)中心中運(yùn)行。最重要的是,他們不依賴(lài)于任何語(yǔ)言、框架或包裝系統(tǒng)。
容器與虛擬機(jī)有著類(lèi)似的資源隔離和分配的優(yōu)點(diǎn),但不同的架構(gòu)方法使容器能夠更加便攜,高效等。
虛擬機(jī)的架構(gòu)
每個(gè)虛擬機(jī)都包括應(yīng)用程序、必要的二進(jìn)制文件和庫(kù)以及一個(gè)完整的客戶(hù)操作系統(tǒng)(Guest OS),盡管它們被分離,它們共享并利用主機(jī)的硬件資源,將近需要十幾個(gè) GB 的大小。
容器的架構(gòu)
容器包括應(yīng)用程序及其所有的依賴(lài),但與其他容器共享內(nèi)核。它們以獨(dú)立的用戶(hù)空間進(jìn)程形式運(yùn)行在主機(jī)操作系統(tǒng)上。他們也不依賴(lài)于任何特定的基礎(chǔ)設(shè)施,Docker 容器可以運(yùn)行在任何計(jì)算機(jī)上,任何基礎(chǔ)設(shè)施和任何云上。
Docker 的容器利用了 LXC,管理利用了 namespaces 來(lái)做權(quán)限的控制和隔離,cgroups 來(lái)進(jìn)行資源的配置,并且還通過(guò) aufs 來(lái)進(jìn)一步提高文件系統(tǒng)的資源利用率,而這些技術(shù)都不是 Docker 獨(dú)創(chuàng)。
LXC
LXC 與虛擬機(jī)的不同之處在于,它是一個(gè)操作系統(tǒng)級(jí)別的虛擬化環(huán)境,而不是硬件虛擬化環(huán)境。他們都做同樣的事情,但 LXC 是操作系統(tǒng)級(jí)別的虛擬化環(huán)境,虛擬環(huán)境有它自己的進(jìn)程和網(wǎng)絡(luò)空間,而不是創(chuàng)建一個(gè)完整成熟的虛擬機(jī)。因此,一個(gè) LXC 虛擬操作系統(tǒng)具有最小的資源需求,并啟動(dòng)只需幾秒鐘。
Docker 的優(yōu)點(diǎn)
輕量級(jí):所有容器在一臺(tái)機(jī)器上共享同一個(gè)操作系統(tǒng)內(nèi)核,這樣他們立即開(kāi)始,并更有效地利用內(nèi)存。Image 是從分層文件系統(tǒng)的構(gòu)建,這樣他們能夠共享公共文件,使得磁盤(pán)使用率和 Image 的下載更加高效。
開(kāi)放:Docker 容器是基于開(kāi)發(fā)的標(biāo)準(zhǔn),允許容器運(yùn)行在主流的 Linux 發(fā)布版和 Microsoft 操作系統(tǒng)作為所有的基礎(chǔ)設(shè)施。
安全:容器使得應(yīng)用程序彼此隔離,而基礎(chǔ)架構(gòu)同時(shí)為應(yīng)用程序提供了額外的保護(hù)層。
為什么要用 Docker
開(kāi)發(fā)更加敏捷:Docker 讓開(kāi)發(fā)人員可以自由定義環(huán)境,創(chuàng)建和部署的應(yīng)用程序更快、更容易,IT 運(yùn)維人員快速應(yīng)對(duì)變化也更加靈活性。
更加可控:Docker 使得開(kāi)發(fā)人員保存從基礎(chǔ)設(shè)施到應(yīng)用的代碼,幫助 IT 運(yùn)維人管理?yè)碛袠?biāo)準(zhǔn)的、安全的、可擴(kuò)展的操作環(huán)境。
高可移植性:Docker 允許自由選擇,可以是從筆記本電腦到一個(gè)團(tuán)隊(duì),從私人基礎(chǔ)設(shè)施到公共云提供商。
這樣,你可以專(zhuān)注于開(kāi)發(fā)應(yīng)用,其他的繁瑣事交給 Docker 去做吧。
通過(guò)以上的內(nèi)容,我們已經(jīng)了解了docker與虛擬機(jī)的區(qū)別有哪些了,同時(shí)也了解了docker的優(yōu)點(diǎn)了,大家在使用docker的時(shí)候,還需要注意安裝的方法,具體的可以咨詢(xún)新網(wǎng)。
聲明:免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶(hù)自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請(qǐng)發(fā)
送郵件至:operations@xinnet.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)
需注明出處:新網(wǎng)idc知識(shí)百科