首頁技術(shù)文章正文

Docker的具體架構(gòu)介紹【java培訓】

更新時間:2020-05-27 來源:黑馬程序員 瀏覽量:


了解了Docker內(nèi)部引擎及作用后,我們還需要通過Docker的具體架構(gòu),了解Docker的整個運行流程。接下來借助Docker官網(wǎng)的架構(gòu)圖對Docker架構(gòu)進行詳細說明,如下所示:

 

1590561118240_Docker的架構(gòu).jpg

 

從上圖中可以看出,Docker架構(gòu)主要包括Client、DOCKER_HOST和Register三部分,關(guān)于這三部分的具體說明如下。

 

1. Client(客戶端)

Client即Docker客戶端,也就是上一小節(jié)Docker Engine中介紹的docker CLI。開發(fā)者通過這個客戶端使用Docker的相關(guān)指令與Docker守護進程進行交互,從而進行Docker鏡像的創(chuàng)建、拉取和運行等操作。

 

2.  DOCKER_HOST(Docker主機)

DOCKER_HOST即Docker內(nèi)部引擎運行的主機,主要指Docker daemon(Docker守護進程)??梢酝ㄟ^Docker守護進程與客戶端還有Docker的鏡像倉庫Registry進行交互,從而管理Images(鏡像)和Containers(容器)等。

 

3.  Registry(注冊中心)

Registry即Docker注冊中心,實質(zhì)就是Docker鏡像倉庫,默認使用的是Docker官方遠程注冊中心Docker Hub,也可以使用開發(fā)者搭建的本地倉庫。Registry中包含了大量的鏡像,這些鏡像可以是官網(wǎng)基礎(chǔ)鏡像,也可以是其他開發(fā)者上傳的鏡像。

 

我們在實際使用 Docker 時,除了會涉及圖中的 3 個主要部分外,還會涉及很多Docker Objects(Docker對象),例如Images(鏡像)、Containers(容器)、Networks(網(wǎng)絡)、Volumes (數(shù)據(jù)卷)、Plugins(插件)等。其中常用的兩個對象Image和Containers的說明如下。

 

·Images(鏡像)

Docker鏡像就是一個只讀的模板,包含了一些創(chuàng)建Docker容器的操作指令。通常情況下,一個Docker鏡像是基于另一個基礎(chǔ)鏡像創(chuàng)建的,并且新創(chuàng)建的鏡像會額外包含一些功能配置。例如:開發(fā)者可以依賴于一個 Ubuntu 的基礎(chǔ)鏡像創(chuàng)建一個新鏡像,并可以在新鏡像中安裝Apache等軟件或其他應用程序。

 

·Containers(容器)

Docker 容器屬于鏡像的一個可運行實例(鏡像與容器的關(guān)系其實與 Java 中的類與對象相似),開發(fā)者可以通過API接口或者CLI命令行接口來創(chuàng)建、運行、停止、移動、刪除一個容器,也可以將一個容器連接到一個或多個網(wǎng)絡中,將數(shù)據(jù)存儲與容器進行關(guān)聯(lián)。

1577370495235_學IT就到黑馬程序員.gif



猜你喜歡
什么是Java語言,java是做什么的?

什么是Docker?有什么特點?

Docker與虛擬機的區(qū)別

分享到:
在線咨詢 我要報名
和我們在線交談!