布魯爾表示,谷歌數據中心已經發(fā)展多年,Docker可以模擬谷歌數據中心技術,大量機器可以像一臺計算機一樣運行。Docker代表網絡軟件開發(fā)的未來。
超級集裝箱
Docker是一家舊金山小型初創(chuàng)開發(fā)的開源軟件。乍看起來,它顯得微不足道,但在硅谷工程師圈子里,它非常流行。eBay開發(fā)人員特德·德茲巴(Ted Dziuba)表示:“如果你認為簡化開發(fā)者生活是發(fā)展方向,那么Docker便是發(fā)展方向。”
Docker表示,超過1.4萬款應用已經采用其技術。布魯爾表示,自從數年前Ruby on Rails開發(fā)框架興起之后,沒有哪種技術像Docker一樣起步如此迅速,普及如此廣泛。
Docker依賴的技術已經問世多年。開源Linux系統(tǒng)早已提供“容器”方案,該方案可以隔離服務器上的不同任務。防止任務相互干擾。谷歌便基于這種理念提供眾多網絡服務,谷歌還花費多年時間優(yōu)化服務的工作方式。但Docker可以將一臺機器的“容器”方便地轉移到另一臺機器。
布魯爾表示:“在便捷打包軟件和標準化部署軟件方面,Docker做得非常出色。Docker讓容器方案變得更加高效。”
Docker可以為開發(fā)者提供多種幫助。例如,開發(fā)者擁有一款桌面軟件,他無需加以改進,便可以讓軟件成為一款云服務。未來,Docker有望讓開發(fā)者更加方便地轉換應用,無需考慮應用運行環(huán)境,也無需考慮應用采用的云計算平臺。
Docker首席技術官所羅門·?怂梗⊿olomon Hykes)表示:“Docker技術可以讓機器互換。”云計算一直承諾,我們可以將互聯網當作一臺巨型計算機。但是,夢想從未照進現實。由于不同系統(tǒng)和不同云服務存在差異,轉移軟件其實非常困難。
更大的影響力
誠然,Docker無法在一夜之間改變這種狀況。首先,如果要運行Docker容器,每臺機器必須裝備一款附加軟件。盡管這款軟件旨在各版本Linux系統(tǒng)上具備相同的運行方式,但實際情況并非如此。
布魯爾表示:“軟件還不夠完美。谷歌和開發(fā)社區(qū)都在這方面加以改進。容器不一定可以在所有系統(tǒng)中運行。”
如果大型操作系統(tǒng)開發(fā)商和大型云服務也可以支持這項技術,我們就可以進跨入全新的云計算世界——所有云服務都有一致的部署方式。幸運的是,谷歌不是唯一支持Docker技術的科技公司。雖然規(guī)模尚小,但亞馬遜、Rackspace和Digtial Ocean的云服務都已經支持Docker。
從表面上看,Docker技術可以會影響谷歌云計算業(yè)務。理論上,Docker可以方便開發(fā)者從谷歌云計算平臺轉移應用。但谷歌意識到,Docker可以吸引更多的開發(fā)者使用谷歌云服務。
?怂贡硎荆“Docker技術對谷歌有利無弊,開發(fā)者可以輕松脫離谷歌云計算平臺,但谷歌因此吸引的客戶量會多于流失的客戶量。”
布魯爾表示:“對于開發(fā)而言,容器只是一個應用級視角,而不是機器級視角。顯然,應用級視角更加自然,而且可以贏得未來。”