1. Docker有什么好處? Docker的主要目標(biāo)是“Build,Ship and Run Any App,Anywhere”,即通過對(duì)應(yīng)用組件的封裝(Packaging)、分發(fā)(Distribution)、部署(Deployment)、運(yùn)行(Runtime)等生命周期的管理,達(dá)到應(yīng)用組件級(jí)別的“一次封裝,到處運(yùn)行”。這里的應(yīng)用組件,既可以是一個(gè)Web應(yīng)用,也可以是一套數(shù)據(jù)庫(kù)服務(wù),甚至是一個(gè)操作系統(tǒng)或編譯器。 Docker基于Linux的多項(xiàng)開源技術(shù)提供了高效、敏捷和輕量級(jí)的容器方案,并且支持在多種主流云平臺(tái)(PaaS)和本地系統(tǒng)上部署?梢哉fDocker為應(yīng)用的開發(fā)和部署提供了“一站式”的解決方案。Docker基于Linux的多項(xiàng)開源技術(shù)提供了高效、敏捷和輕量級(jí)的容器方案,并且支持在多種主流云平臺(tái)(PaaS)和本地系統(tǒng)上部署?梢哉fDocker為應(yīng)用的開發(fā)和部署提供了“一站式”的解決方案。 2. Docker和虛擬機(jī)有什么區(qū)別?
作為一種輕量級(jí)的虛擬化方式,Docker在運(yùn)行應(yīng)用上跟傳統(tǒng)的虛擬機(jī)方式相比具有顯著優(yōu)勢(shì): (1)Docker容器很快,啟動(dòng)和停止可以在秒級(jí)實(shí)現(xiàn),這相比傳統(tǒng)的虛擬機(jī)方式要快得多。 (2)Docker容器對(duì)系統(tǒng)資源需求很少,一臺(tái)主機(jī)上可以同時(shí)運(yùn)行數(shù)千個(gè)Docker容器。 (3)Docker通過類似Git的操作來方便用戶獲取、分發(fā)和更新應(yīng)用鏡像,指令簡(jiǎn)明,學(xué)習(xí)成本較低。 (4)Docker通過Dockerfile配置文件來支持靈活的自動(dòng)化創(chuàng)建和部署機(jī)制,提高工作效率。 (5)Docker容器除了運(yùn)行其中的應(yīng)用之外,基本不消耗額外的系統(tǒng)資源,保證應(yīng)用性能的同時(shí),盡量減小系統(tǒng)開銷。傳統(tǒng)虛擬機(jī)方式運(yùn)行N個(gè)不同的應(yīng)用就要啟動(dòng)N個(gè)虛擬機(jī)(每個(gè)虛擬機(jī)需要單獨(dú)分配獨(dú)占的內(nèi)存、磁盤等資源),而Docker只需要啟動(dòng)N個(gè)隔離的容器,并將應(yīng)用放到容器內(nèi)即可。 (5)在隔離性方面,傳統(tǒng)的虛擬機(jī)方式多了一層額外的隔離。但這并不意味著Docker就不安全。Docker利用Linux系統(tǒng)上的多種防護(hù)機(jī)制實(shí)現(xiàn)了嚴(yán)格可靠的隔離。從1.3版本開始,Docker引入了安全選項(xiàng)和鏡像簽名機(jī)制,極大地提高了使用Docker的安全性。 3. 什么是虛擬化技術(shù)?
虛擬化技術(shù)是一個(gè)通用的概念,在不同領(lǐng)域有不同的理解。在計(jì)算領(lǐng)域,一般指的是計(jì)算虛擬化(Computing Virtualization),或通常說的服務(wù)器虛擬化。 維基百科上的定義如下: 在計(jì)算機(jī)技術(shù)中,虛擬化(Virtualization)是一種資源管理技術(shù),是將計(jì)算機(jī)的各種實(shí)體資源,如服務(wù)器、網(wǎng)絡(luò)、內(nèi)存及存儲(chǔ)等,予以抽象、轉(zhuǎn)換后呈現(xiàn)出來,打破實(shí)體結(jié)構(gòu)間的不可切割的障礙,使用戶可以用比原本的組態(tài)更好的方式來應(yīng)用這些資源。 可見,虛擬化的核心是對(duì)資源進(jìn)行抽象,目標(biāo)往往是為了在同一個(gè)主機(jī)上運(yùn)行多個(gè)系統(tǒng)或應(yīng)用,從而提高系統(tǒng)資源的利用率,同時(shí)帶來降低成本、方便管理和容錯(cuò)容災(zāi)等好處。 從大類上分,虛擬化技術(shù)可分為基于硬件的虛擬化和基于軟件的虛擬化。 4. 哪種系統(tǒng)最適合運(yùn)行Docker?
Docker引擎的基礎(chǔ)是Linux容器(Linux Containers,LXC)技術(shù)。Linux系統(tǒng)更適合運(yùn)行Docker,F(xiàn)在主流的Linux操作系統(tǒng)都已經(jīng)支持Docker。目前Docker 已經(jīng)支持Windows,MacOS系統(tǒng)了。 5. Docker是否安全? Docker容器,默認(rèn)情況下,相當(dāng)安全的。
|