雲端計算進階學習路線圖課件:Docker容器的四種網路模式

千鋒雲端計算發表於2020-02-07

Docker容器是一個開源的應用容器引擎,讓開發者可以以統一的方式打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何安裝Docker引擎的伺服器上,也可以實現虛擬化。隨著雲端計算的飛速發展以及企業需求的多樣化,Docker容器技術成為雲端計算人才必備的技能之一。很多人想要快速掌握Docker容器技術,接下來就給大家講解Docker容器的四種網路模式。

雲端計算進階學習路線圖課件:Docker容器的四種網路模式

1、closed container 封閉式網路模式

沒有網路協議棧的通訊使用none模式,Docker容器擁有自己的Network Namespace,但是,並不為Docker容器進行任何網路配置。也就是說,這個Docker容器沒有網路卡、IP、路由等資訊,只有lo網路介面。需要我們自己為Docker容器新增網路卡、配置IP等。

2、bridged container 橋接式網路模式

各個容器之間網路協議棧單獨分離當Docker啟動時,會自動在主機上建立一個docker0虛擬網橋,實際上是Linux的一個bridge,可以理解為一個軟體交換機,它會在掛載到它的網口之間進行轉發。同時,Docker隨機分配一個本地未佔用的私有網段(在 RFC1918 中定義)中的一個地址給docker0介面。當建立一個Docker容器的時候,同時會建立了一對veth pair 介面。這對介面一端在容器內,即eth0;另一端在本地並被掛載到docker0網橋,名稱以veth開頭。透過這種方式,主機可以跟容器通訊,容器之間也可以相互通訊。Docker就建立了在主機和所有容器之間一個虛擬共享網路。

雲端計算進階學習路線圖課件:Docker容器的四種網路模式

3、joined container 聯合掛載式網路模式

容器之間可以共享網路協議棧,即可以透過套接字來進行通訊這個模式指定新建立的容器和已經存在的一個容器共享一個Network Namespace,而不是和宿主機共享。新建立的容器不會建立自己的網路卡,配置自己的IP,而是和一個指定的容器共享 IP、埠範圍等。同樣,兩個容器除了網路方面,其他的如檔案系統、程式列表等還是隔離的。兩個容器的程式可以透過lo網路卡裝置通訊。

4、opentainer container 開放式網路模式

與主機共享網路協議棧Host模式使用是在容器啟動時候指明--network host,此時容器共享宿主機的Network Namespace,容器內啟動的埠直接是宿主機的埠,容器不會建立網路卡和IP,直接使用宿主機的網路卡和IP,但是容器內的其他資源是隔離的,如檔案系統、使用者和使用者組。直接使用宿主機網路。同樣啟動一個nginx,此時共享主機網路,根據情況來使用,這樣子也不用做埠轉發,網路傳輸效率會比較高。

雲端計算進階學習路線圖課件:Docker容器的四種網路模式

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


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69916964/viewspace-2674728/,如需轉載,請註明出處,否則將追究法律責任。

相關文章