1. 程式人生 > >Docker:將“集裝箱”搬上網際網路

Docker:將“集裝箱”搬上網際網路

跟任何授命儀式一樣,這事兒非同小可。在4月末的微軟年度開發者大會上,CEO薩蒂亞·納德拉(Satya Nadella)剛發表完主旨演講不到幾分鐘,這位全球最大軟體公司的領袖就將舞臺交給了一位溫文爾雅的男士。47歲的本·戈盧布(Ben Golub)身著黑色外套和印有公司鯨魚標誌的白色T恤,他是一家名為Docker的初創企業的CEO。

跟任何授命儀式一樣,這事兒非同小可。在4月末的微軟年度開發者大會上,CEO薩蒂亞·納德拉(Satya Nadella)剛發表完主旨演講不到幾分鐘,這位全球最大軟體公司的領袖就將舞臺交給了一位溫文爾雅的男士。47歲的本·戈盧布(Ben Golub)身著黑色外套和印有公司鯨魚標誌的白色T恤,他是一家名為Docker的初創企業的CEO。

面對擠滿會場的觀眾,他表達了自己的驚訝之情—他那未經打磨的新產品竟會被微軟如此看重。他這樣描述這款仍在蹣跚學步的產品:“它有時會跌倒,有時會吐奶,並讓那些跟它最親的人睡不成覺。”

過了一會兒,身著同款Docker T恤一名微軟高管登臺,對Docker技術作了一番現場演示。他將一個電子商務網站基於微軟的全部程式碼用Docker軟體加以處理,只用了幾秒鐘,經處理的程式碼就在競爭對手Linux的伺服器上運作了起來。在場的開發者們頓時歡呼起來—在此之前,完成這樣一項任務需要數天乃至數週時間。

和其他幾十家科技巨頭一樣,微軟也迫不及待地宣佈了它對Docker技術的鐘愛。它是這些年來應用開發領域最重要的進步之一。現如今,幾乎任何線上活動都要經過一個執行在雲端的應用。

Netflix、Google Search、Twitter、Facebook 和Snapchat看上去都像變魔術一樣神奇,但單一的外表之下其實是幾十或數百個不同的元件,各自負責儲存器、資料庫、安全和網路等一個方面。開發者關心的是如何做出一個獨特的元件,而不是背後的管道鋪設。他們希望自己的應用能夠運行於任何雲伺服器或裝置、可快速更新,並能經受住網路“掉鏈子”的考驗。

而Docker就試圖用一種名為“集裝箱”的技術實現以上所有目標。集裝箱將應用連同其所有的程式碼庫和可執行檔案打包進一個容器,這些容器就跟現實中的集裝箱一樣,處處適用,可供應用開發者快速調換,只消幾分鐘或數小時便可通過驗證並上線使用。谷歌等大型科技公司一直在使用內部版本的集裝箱,且已經使用多年。但Docker將工具變得更加簡單,從而使其他人都可以使用。

在短短兩年內,建立在Docker免費集裝箱軟體內的應用被下載5.35億次。約有150,000個線上應用靠Docker集裝箱執行,其中包括高盛、亞馬遜和IBM等公司的應用。根據紐約市場研究公司“企業技術研究”公司(Enterprise Tchnology Research)的一項研究,大型企業正在空前快速地測試或計劃採用Docker,勝過其他任何開源的雲端產品。

Docker超強陣容的投資人隊伍中包括了標杆投資(Benchmark)、格雷洛克風投公司(Greylock Partners)和紅杉資本(Sequoia Capital),他們總共已向該公司投入1.61億美元,最近一輪融資由洞見創投(Insight Venture Partners)領投,賦予了該公司10億美元估值—而這家公司今年的營收預計都到不了1,000萬美元。“25年來,我從未見過這樣快的普及速率。”高盛技術部聯席主管唐·杜威(Don Duet)說。

而且要知道,Docker背後的這家公司當初差一點就一命嗚呼。其聯合創始人之一是今年31歲的法國工程師(父母為美國和加拿大人)所羅門·海克斯(Solomon Hykes)。2010年從孵化器Y Combinator畢業時,他的初創企業兜售的是一個全然不同的創意。該公司名為dotCloud,其軟體提供一個平臺,供開發者在亞馬遜的雲服務中編寫程式碼。

從雅虎聯合創始人楊致遠(Jerry Yang)、超級天使投資人克里斯·薩加(Chris Sacca)和Trinity Ventures、標杆投資等企業處,該公司總共籌集了1,100萬美元的資本。之後,該公司便陷入泥淖。客戶不再需要它的服務,亞馬遜也改善了支援,意味著dotCloud自己的增長步伐放緩。

DotCloud董事會花了幾個月尋找經驗豐富的運營者,一些人甚至開始將投資減值—直到戈盧布出現。他與海克斯達成一致,計劃採取大膽舉措。否則,“他們早就擱淺了。”標杆投資的彼得·芬頓(Peter Fenton)說。

海克斯手中只剩下一張牌。憑藉銀行裡剩下的500萬美元,他開始搗鼓促使dotCloud飛速運轉的一項底層技術:集裝箱。2013年春的一個週一,dotCloud的軟體工程師像往常一樣到公司上班,卻被告知從當天起,他們將轉做海克斯的新專案,代號Docker:“帶上筆記本去找所羅門,他會給你們分派任務。”當時,海克斯的錢僅可以撐到年底。

選擇戈盧布有點匪夷所思。他是土生土長的庫比蒂諾人(當年他摘過杏子的地方現在已成為蘋果公司的總部所在地),他曾試圖在烏茲別克塔什干開設商學院未果,並作為蕭恩·帕克(Sean Parker)社交媒體初創企業Plaxo的執行長苦苦奮鬥了五年時間,該公司最終於2008年賣掉。

在芬頓的邀請下,戈盧布前來為海克斯出謀劃策。他支援海克斯在集裝箱上孤注一擲的想法。不論成敗,結果都會很快揭曉。“當時我說,不管了,也許會失敗,但就算敗也是敗自己想做的事情上。”

海克斯和戈盧布隨後走出了更加大膽的一步:將底層技術開源,供所有人免費使用。短短几個月內,就有數百名志願者開始編寫程式碼,提升並拓展Docker執行集裝箱的方式。及至2013年12月,Docker的普及度已經足以說服新投資人為其投入1,500萬美元。

從那以後,Docker的擴張就沒有停過,目前已有160名僱員和1,300名志願者從事其開源專案的開發。再來說說賺錢的部分。在6月份於舊金山舉行的DockerCon使用者大會上,戈盧布和海克斯宣佈了一個付費的新產品套件,之前已有800名顧客在等待這種可安全儲存集裝箱的登錄檔。該產品的第一位客戶是聯邦採購代理機構—美國總務署。此等大客戶有望將其明年的營收推高至4,000萬美元。“如果Docker最終成為計算中的基礎層,那麼樂觀估計(市場規模)可達1,000億美元。”Docker小投資方光速創投(Lightspeed Venture Partners)的約翰·弗里奧尼斯(John Vrionis)說。

很多人都將Docker稱為下一個VMware。15年前,VMware以一種名為虛擬機器的技術,使在較少的伺服器上執行多個作業系統成為可能,以此促成了計算領域的重新洗牌。但VMware並未將技術開源,始終在該領域內一家獨大。而Docker則指望靠IBM這樣的大型合作伙伴轉售其產品,或被納入微軟和亞馬遜等公司雲集市。

已有幾十家初創企業創立起來,聚焦於Docker尚未解答的一系列集裝箱問題,儲存方面有Portworx,網路方面有Weaveworks。(Docker已經吞併了其中數家。)

今年6月,Docker聯合微軟、VMware及其最勢均力敵的對手、由谷歌撐腰CoreOS等公司,牽頭制定了一個單一的集裝箱標準,以確保自己不被排擠出去。然而,對於那些指望靠免費技術賺錢的相關初創企業而言,這樣一個標準只會增加他們的壓力。它通常只容許一家企業獨大。

亮相微軟大會兩個月之後,在DockerCon擁擠的會場中,Lyft和GoPro等各家熱門公司圍繞在戈盧布和海克斯的周圍。旁邊是一頭樂高積木搭成的鯨魚,以及擺滿鯨魚公仔和鯨魚標識T恤的桌子。

明年,他們將需要一個更大的會場了—但前提是Docker沒被其中一家大型合作伙伴收購。有那麼一刻,戈盧布一個人站在那裡。Docker願不願以某個價格賣掉“集裝箱”的未來呢?這位CEO苦笑:“我們對它有長遠的打算。”

譯 雁行 校 Lily