閱讀145 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Docker改名啦?什麼是 Project Moby

14930502792289

DockerCon上最大的新聞莫過於Solomon Hykes宣布Project Moby了,這也在網上引發了軒然大波,關切和爭論紛至遝來,一些所謂“解讀”也更加讓人困惑。

簡而言之,Docker公司決定將軟件產品“Docker”和開源項目“Docker”區分開來。Moby Project項目將作為開源項目的新名稱,它包含了一係列公共開源組件,用於組裝專門的容器係統。Moby將由開源社區的開發者共同維護。而Docker公司會基於Moby構建Docker社區版(CE)和企業版(EE)等軟件產品。

對於使用Docker社區版/企業版的用戶,此次不會有任何的影響。這次變更主要針對Docker的原有開源開發流程和基礎組件。

Project Moby的官網包含很多官方解讀,https://mobyproject.org/DockOne刊載了一個不錯翻譯的文稿

在Twitter上,Solomon用手繪解釋 Project 項目的基本概念

IMG_2498

Moby是由Docker創建的一個開源框架,用來組裝專門的容器係統,而無需開發者重新發明輪子。Docker社區版會基於Moby構建,而且Docker社區版將作為Docker企業版的上遊代碼基礎。

IMG_2499

Moby項目將提供工具可以將標準組件庫像“樂高積木”那樣組裝成定製的容器框架,可以支持各種使用容器的場景,從雲端到IoT設備。一個名為Moby Origin的參考組裝品,會作為Docker容器平台的開源基礎。DockerCon上,Rolf Neugebauer演示了多個例子,其中包括利用Moby構建一個OS鏡像來在Google雲上部署Kubernetes。

在Solomon的解讀中,Moby和Docker在邏輯上就像像 Fedora 開源項目和 Red Hat Enterprise Linux 的關係

然而為什麼這次更名,引發了如此廣泛的爭論?

首先,Docker公司將限製“Docker”名稱的使用範圍,Docker作為Docker公司的注冊商標,隻能被用於Docker的產品(比如社區版、企業版、Docker Hub、Docker Store等)。

其次,Solomon直接將開源 Docker 代碼倉庫地址遷移成為 https://github.com/moby/moby,這導致了整個開發流程的變化。連 Solomon 本人後來也承認這次變更與用戶之間進行的溝通做的不夠,他表示:“我發現我此前在pull request中所做的聲明不夠清楚。對此我感到非常抱歉。”

在我的理解中,Docker公司有權利定義“Docker”名稱的含義、使用範圍和選擇自己的商業化模式,然而如果此次變更以較為穩妥的方式遷移的話,會減少很多不必要的紛擾和困惑。

從積極的角度上來看,Docker公司將繼續推動Docker技術的組件化和開放性,從向Linux和CNCF基金會貢獻runc到containerd,到今天將Project Moby交給開發者社區主導。一個初創公司已經為容器開源社區做出了眾多貢獻,而且我們可以預見更多有創意的容器應用可以從開放的社區中孕育出來。

在DockerCon上,Solomon的一個段子引發全場歡笑:Docker一直以來在采用“Complaint driven” (抱怨驅動)的方式進行開發,Docker團隊持續不斷地修複開發者對Docker的抱怨,而這個過程將無窮循環下去。期待這次Docker團隊能夠聽到開發者的聲音,真正實現建立Project Moby的願景。

最後還是用官方架構圖再次澄清一下什麼是Moby,它和Docker產品的關係吧
IMG_2497

最後更新:2017-04-25 00:30:56

  上一篇:go 網絡架構、基礎設施、賬號、應用,四大安全措施加固企業雲安全
  下一篇:go 巧用Terraform和Packer開源工具完成雲上自動運維