選單
GSS 技術部落格
在這個園地裡我們將從技術、專案管理、客戶對談面和大家分享我們多年的經驗,希望大家不管是喜歡或是有意見,都可以回饋給我們,讓我們有機會和大家對話並一起成長!
若有任何問題請來信:gss_crm@gss.com.tw
2 分鐘閱讀時間 (406 個字)

每日小知識 #17 - Docker 網路篇(1)

shutterstock_198004562

Docker 之所以方便就是因為不論是 container 間 ,或是 container 與 外部服務 在網路上的溝通,基本上是沒什麼太大的障礙的…

服務本身不會意識到它現在是被佈署在 Windows/Linux/Mac 或是多種混合起來的環境上,彼此間都還是能溝通。

而能夠讓 Docker 具有這樣的能力除了先前講的 Linux cgroup 與 namespaces 之外,最重要的莫過於 Network Driver

Docker 的 Network Driver 主要分為以下幾大類:

  1. Bridge: 這是 container 預設 會使用的 Driver,如果 container 間要能互相溝通,就會是用這種。
  2. Host: 這是解開 Host 與 container 間的複雜網路轉接的設定,其餘 container 的隔離特性都仍保有。簡單說,就是 container 會直接用 Host 的網路。
  3. Overlay: 這種 Driver 主要是能讓跨 Docker Daemon(不同機器上的 Docker) 的 container 可以溝通,主要被用在 Docker 推出的 Docker Swarm 上。
  4. macvlan: 如果前面三種大家都還有概念,這種恐怕只有網管人員比較熟悉了,它是會指定一個 MAC 位址給 container,讓其在整個網路架構上被視為一台實體機器,使用時機是舊的 application 轉換到 container 時想沿用原本的網路架構,而不透過 Docker 預設的 route 機制。
  5. none: 就沒網路。通常是會搭配一些其他的 Network Driver,或是這個 container 本身的性質就是不需要網路的,像是 log parsing 之類的。
  6. Network plugins: 很多第三方的廠商像是 Flannel, Weaver, Calico,…等,有開發屬於它們自己的軟體網路架構,有需求也可以使用。

以上,是 Docker 網路的幾個大分類,
接下來的幾天會針對這幾種做深入的說明。

每日小知識 #18 - Docker 網路篇(2) - Bridge
PWA - Service Worker Register

相關文章

 

評論

尚無評論
已經注冊了? 這裡登入
Guest
2024/05/20, 週一

Captcha 圖像