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