Docker是一個(gè)開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個(gè)可移植的鏡像中,然后發(fā)布到任何流行的Linux或Windows操作系統(tǒng)的機(jī)器上,也可以實(shí)現(xiàn)虛擬化。Docker能運(yùn)行無狀態(tài)類型的工作負(fù)載,這些工作負(fù)載一般是短暫的,從而用戶可以根據(jù)需要輕松地創(chuàng)建、刪除和替換容器。
關(guān)于LXD的詳情介紹
LXD是一個(gè)系統(tǒng)級的容器,類似于虛擬機(jī)或物理機(jī),它是對LXC的基礎(chǔ)打包和升級,可在內(nèi)部運(yùn)行完整的操作系統(tǒng),支持運(yùn)行各類型的工作負(fù)載,用戶可以像管理虛擬機(jī)或物理機(jī)一樣來管理LXD。系統(tǒng)容器通常是持久的,用戶可在一個(gè)系統(tǒng)容器中托管多個(gè)應(yīng)用程序。
兩者有什么區(qū)別?
Docker和LXD與主機(jī)操作系統(tǒng)共享一個(gè)內(nèi)核,并利用它來創(chuàng)建獨(dú)立的進(jìn)程,主要區(qū)別在于Docker運(yùn)行單個(gè)應(yīng)用程序/流程,而LXD運(yùn)行完整的操作系統(tǒng),這為它們支持的工作負(fù)載類型提供了靈活性。
與Docker建議每個(gè)容器只有單個(gè)進(jìn)程的設(shè)計(jì)模式不同,LXC/LXD中的容器可以運(yùn)行多個(gè)進(jìn)程。此外,Docker容器可移植性更強(qiáng),為與LXD相比,Docker有效地抽象了資源。最后,Docker支持在Windows和macOS環(huán)境上運(yùn)行,但LXD只支持Linux。
Docker和LXD容器雖然服務(wù)目的不同,但兩者也可以搭配使用,進(jìn)行優(yōu)勢互補(bǔ)。例如,我們可以使用LXD創(chuàng)建在容器內(nèi)運(yùn)行的虛擬系統(tǒng),按照實(shí)際需要對它們進(jìn)行分段,并輕松使用Docker獲得在容器內(nèi)運(yùn)行的實(shí)際服務(wù)等。
以上就是什么是Docker、LXD,兩者有什么區(qū)別?的內(nèi)容。