溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

云計(jì)算進(jìn)階學(xué)習(xí)路線圖課件:Docker容器的四種網(wǎng)絡(luò)模式

發(fā)布時(shí)間:2020-07-27 02:51:36 來源:網(wǎng)絡(luò) 閱讀:206 作者:wx5e37c11a17f34 欄目:云計(jì)算

Docker容器是一個(gè)開源的應(yīng)用容器引擎,讓開發(fā)者可以以統(tǒng)一的方式打包他們的應(yīng)用以及依賴包到一個(gè)可移植的容器中,然后發(fā)布到任何安裝Docker引擎的服務(wù)器上,也可以實(shí)現(xiàn)虛擬化。隨著云計(jì)算的飛速發(fā)展以及企業(yè)需求的多樣化,Docker容器技術(shù)成為云計(jì)算人才必備的技能之一。很多人想要快速掌握Docker容器技術(shù),接下來就給大家講解Docker容器的四種網(wǎng)絡(luò)模式。

1、closed container 封閉式網(wǎng)絡(luò)模式

沒有網(wǎng)絡(luò)協(xié)議棧的通信使用none模式,Docker容器擁有自己的Network Namespace,但是,并不為Docker容器進(jìn)行任何網(wǎng)絡(luò)配置。也就是說,這個(gè)Docker容器沒有網(wǎng)卡、IP、路由等信息,只有l(wèi)o網(wǎng)絡(luò)接口。需要我們自己為Docker容器添加網(wǎng)卡、配置IP等。

2、bridged container 橋接式網(wǎng)絡(luò)模式

各個(gè)容器之間網(wǎng)絡(luò)協(xié)議棧單獨(dú)分離當(dāng)Docker啟動(dòng)時(shí),會(huì)自動(dòng)在主機(jī)上創(chuàng)建一個(gè)docker0虛擬網(wǎng)橋,實(shí)際上是Linux的一個(gè)bridge,可以理解為一個(gè)軟件交換機(jī),它會(huì)在掛載到它的網(wǎng)口之間進(jìn)行轉(zhuǎn)發(fā)。同時(shí),Docker隨機(jī)分配一個(gè)本地未占用的私有網(wǎng)段(在 RFC1918 中定義)中的一個(gè)地址給docker0接口。當(dāng)創(chuàng)建一個(gè)Docker容器的時(shí)候,同時(shí)會(huì)創(chuàng)建了一對(duì)veth pair 接口。這對(duì)接口一端在容器內(nèi),即eth0;另一端在本地并被掛載到docker0網(wǎng)橋,名稱以veth開頭。通過這種方式,主機(jī)可以跟容器通信,容器之間也可以相互通信。Docker就創(chuàng)建了在主機(jī)和所有容器之間一個(gè)虛擬共享網(wǎng)絡(luò)。

3、joined container 聯(lián)合掛載式網(wǎng)絡(luò)模式

容器之間可以共享網(wǎng)絡(luò)協(xié)議棧,即可以通過套接字來進(jìn)行通信這個(gè)模式指定新創(chuàng)建的容器和已經(jīng)存在的一個(gè)容器共享一個(gè)Network Namespace,而不是和宿主機(jī)共享。新創(chuàng)建的容器不會(huì)創(chuàng)建自己的網(wǎng)卡,配置自己的IP,而是和一個(gè)指定的容器共享 IP、端口范圍等。同樣,兩個(gè)容器除了網(wǎng)絡(luò)方面,其他的如文件系統(tǒng)、進(jìn)程列表等還是隔離的。兩個(gè)容器的進(jìn)程可以通過lo網(wǎng)卡設(shè)備通信。

4、opentainer container 開放式網(wǎng)絡(luò)模式

與主機(jī)共享網(wǎng)絡(luò)協(xié)議棧Host模式使用是在容器啟動(dòng)時(shí)候指明--network host,此時(shí)容器共享宿主機(jī)的Network Namespace,容器內(nèi)啟動(dòng)的端口直接是宿主機(jī)的端口,容器不會(huì)創(chuàng)建網(wǎng)卡和IP,直接使用宿主機(jī)的網(wǎng)卡和IP,但是容器內(nèi)的其他資源是隔離的,如文件系統(tǒng)、用戶和用戶組。直接使用宿主機(jī)網(wǎng)絡(luò)。同樣啟動(dòng)一個(gè)nginx,此時(shí)共享主機(jī)網(wǎng)絡(luò),根據(jù)情況來使用,這樣子也不用做端口轉(zhuǎn)發(fā),網(wǎng)絡(luò)傳輸效率會(huì)比較高。

Docker運(yùn)行過程也就是去倉庫把鏡像拉到本地,然后用一條命令把鏡像運(yùn)行起來變成容器。所以,我們也常常將Docker稱為碼頭工人或碼頭裝卸工,這和Docker的中文翻譯搬運(yùn)工人如出一轍。以上內(nèi)容并不涉及Docker的安裝、鏡像的使用、容器的操作等內(nèi)容。這部分東西,希望讀者自己可以通過閱讀書籍與官方文檔的形式掌握。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI