問答中心
Answer Center
首頁
產(chǎn)品
解決方案
關(guān)于我們
服務(wù)支持
聯(lián)系我們
Answer Center
下載中心
視頻中心
常見問題
售后服務(wù)
時間:2023-12-15 13:41:32
點(diǎn)擊:1298
關(guān)鍵詞:Docker
Docker是一個開源的應(yīng)用容器引擎,它讓開發(fā)者可以將他們的應(yīng)用和依賴打包到一個可移植的鏡像中,然后發(fā)布到任何流行的Linux或Windows操作系統(tǒng)的機(jī)器上,也可以實(shí)現(xiàn)虛擬化。
一個完整的Docker由以下幾個部分組成:
1. Docker主機(jī)(Host):安裝了Docker程序的機(jī)器。
2. Docker客戶端(Client):連接Docker主機(jī)進(jìn)行操作。
3. Docker倉庫(Registry):用來保存各種打包好的軟件鏡像。
4. Docker鏡像(Images):軟件打包好的鏡像,放在Docker倉庫中。
5. Docker容器(Container):鏡像啟動后的實(shí)例成為一個容器;容器是獨(dú)立運(yùn)行的一個或者一組應(yīng)用。
Docker使用沙箱機(jī)制,容器之間不會有任何接口。它基于LXC的高級容器引擎,源代碼托管在Github上,基于go語言并遵從Apache2.0協(xié)議開源。
Docker的作用主要有以下幾點(diǎn):
1. 更好地利用資源:虛擬機(jī)的粒度是“虛擬出的機(jī)器”,而Docker的粒度則是“被限制的應(yīng)用”,相比較而言,Docker的內(nèi)存占用更少,更加輕量級。
2. 為微服務(wù)定制:Docker可以很好地和微服務(wù)結(jié)合起來,從概念上來說,一個微服務(wù)便是一個提供一整套應(yīng)用程序的部分功能,Docker便可以在開發(fā)、測試和部署過程中一直充當(dāng)微服務(wù)的容器。甚至生產(chǎn)環(huán)境也可以在Docker中部署微服務(wù)。
3. 在云服務(wù)提供商之間移植:大多數(shù)的云主機(jī)提供商已經(jīng)全面支持Docker。
4. 代碼管道化管理:能夠?qū)Υa以流式pipeline管道化進(jìn)行管理,從開發(fā)者的機(jī)器到生產(chǎn)環(huán)境機(jī)器這個流程中都能有效管理。因?yàn)樵谶@個流程中會有各種不同的環(huán)境,每個都可能有微小的區(qū)別,Docker提供了跨越這些異構(gòu)環(huán)境以一致性的微環(huán)境,從開發(fā)到部署實(shí)現(xiàn)流暢發(fā)布。
5. 開發(fā)人員的生產(chǎn)化:在一個開發(fā)環(huán)境,我們希望我們的開發(fā)環(huán)境能更加接近于生產(chǎn)環(huán)境,我們會讓每個服務(wù)運(yùn)行在自己的VM中,這樣能模擬生產(chǎn)環(huán)境。比如有時我們并不總是需要跨越網(wǎng)絡(luò)連接,這樣我們可以將多個Docker裝載一系列服務(wù)運(yùn)行在單機(jī)上最大程度模擬生產(chǎn)分布式部署的環(huán)境。實(shí)現(xiàn)應(yīng)用之間的解耦,將多個應(yīng)用服務(wù)部署在多個Docker中能輕松達(dá)到這個目的。
6. 提供同樣類似VM的能力,但是沒有任何副作用:它能讓你將環(huán)境和配置放入代碼然后部署,同樣的Docker配置能夠在各種環(huán)境中使用,這實(shí)際是將應(yīng)用環(huán)境和底層環(huán)境實(shí)現(xiàn)了解耦。
免責(zé)聲明:本網(wǎng)站部分文章、圖片等信息來源于網(wǎng)絡(luò),版權(quán)歸原作者平臺所有,僅用于學(xué)術(shù)分享,如不慎侵犯了你的權(quán)益,請聯(lián)系我們,我們將做刪除處理!