網路驅動程式

Docker 的網路子系統是可插拔的,使用驅動程式架構。預設提供多種驅動程式,以提供核心網路功能。

  • bridge:預設的網路驅動程式。如果您沒有指定驅動程式,這就是您正在建立的網路類型。當您的應用程式執行在需要與同一主機上的其他容器進行通訊的容器中時,通常會使用橋接(Bridge)網路。請參閱 橋接網路驅動程式

  • host:移除容器與 Docker 主機之間的網路隔離,並直接使用主機的網路。請參閱 主機網路驅動程式

  • overlay:重疊(Overlay)網路將多個 Docker 常駐程式(daemon)連接在一起,並使 Swarm 服務和容器能夠跨節點進行通訊。此策略無需進行作業系統層級的路由。請參閱 重疊網路驅動程式

  • ipvlan:IPvlan 網路讓使用者能夠完全控制 IPv4 和 IPv6 定址。VLAN 驅動程式在此基礎上構建,讓操作員能夠完全控制 Layer 2 VLAN 標記,甚至對於有興趣進行底層網路整合的使用者,還能控制 IPvlan L3 路由。請參閱 IPvlan 網路驅動程式

  • macvlan:Macvlan 網路允許您將 MAC 位址指派給容器,使其在您的網路上看起來像是實體裝置。Docker 常駐程式透過 MAC 位址將流量路由至容器。在處理預期直接連接到實體網路而非透過 Docker 主機網路堆疊路由的舊版應用程式時,使用 macvlan 驅動程式通常是最佳選擇。請參閱 Macvlan 網路驅動程式

  • none:將容器與主機及其他容器完全隔離。none 不適用於 Swarm 服務。請參閱 無(None)網路驅動程式

  • 網路外掛程式:您可以安裝並使用第三方網路外掛程式來擴充 Docker。

網路驅動程式摘要

  • 預設的橋接網路適用於不需要特殊網路功能的執行中容器。
  • 使用者定義的橋接網路可讓同一 Docker 主機上的容器互相通訊。使用者定義的網路通常為屬於共同專案或元件的多個容器定義一個隔離的網路。
  • 主機網路與容器共用主機的網路。當您使用此驅動程式時,容器的網路不會與主機隔離。
  • 當您需要跨不同 Docker 主機執行容器進行通訊,或是多個應用程式透過 Swarm 服務協同運作時,重疊(Overlay)網路是最佳選擇。
  • 當您從虛擬機(VM)設定遷移,或是需要您的容器在網路上看起來像實體主機(且每個容器都具有唯一 MAC 位址)時,Macvlan 網路是最佳選擇。
  • IPvlan 與 Macvlan 類似,但不為容器指派唯一的 MAC 位址。當網路介面或連接埠可指派的 MAC 位址數量受限時,請考慮使用 IPvlan。
  • 第三方網路外掛程式可讓您將 Docker 與專業的網路堆疊整合。

網路教學

現在您已經了解 Docker 網路的基礎知識,請透過以下教學課程加深您的理解:

© . This site is unofficial and not affiliated with Kubernetes or Docker Inc.