Docker無疑是當今最火熱的新創科技公司之一,9個月前這家美國舊金山的新創公司已經獲得一筆1千5百萬美元的資金,前兩個月又有新一輪4千萬美元的創投資金加入。

創投資金爭相投入,IT業界大廠也群起擁戴,Docker成為鎂光燈追逐的焦點,儼然就是創業有成的典範。然而,這個成功的故事背後,卻有一段鮮為人知的辛苦過程。

Pivot:新創公司關鍵轉型成功的故事

Docker這家公司的歷史可追溯至2010年,創業至今短短4年,和一些知名的網路新創公司一樣,在創業的路上歷經不少波折。

原本這家公司是以dotCloud的名稱成立,打算投入當時普遍看好的雲端運算服務──PaaS(Platform as a Service)。PaaS這樣的服務主要訴求開發人員的電腦只要連得上網路,隨時隨地都能寫程式,而且在程式開發完成後,立即就能部署在雲端平臺上運行,開始提供服務。

PaaS的作法跟傳統開發方法有很大的不同,傳統開發應用程式的做法,必須先準備好開發環境、測試環境,待一切就緒後開發團隊才開始寫程式;然而準備開發環境不僅是一件麻煩的事,而且得事先投資相對應的軟硬體來建置開發環境;相較之下,PaaS的作法強調快速啟動,讓開發人員跳過上述步驟,直接在PaaS平臺上動手寫程式,而費用則是依用量計價,用多少就付多少。

照理來說,PaaS是個好構想,後市可期。但是,現實的問題是市場接受度不如預期,PaaS市場起飛速度頗慢,因而dotCloud公司的業務遲遲不見起色。而且,PaaS市場已經不夠大了,當時又有許多家廠商在角逐,使得dotCloud公司的處境更是雪上加霜,背後的創投公司急著要創辦人找到新出路。

面臨公司經營上艱難困境,dotCloud的創辦人Solomon Hykes(目前在Docker公司擔任技術長)決定放手一搏,效法開放原始碼運動的精神,把自身在開發PaaS平臺時,為了方便採用Linux Container而研發的一套工具,也就是Docker,開放給大家使用。

Docker開源專案釋出後,短時間內就獲得熱烈的迴響,因為它降低了Container技術的使用門檻。開發人員只要把寫好的應用程式,在自己的電腦將之封裝為DockerContainer,這個應用程式容器就擁有極高的移動性,它可以被送到測試主機,進行上線前的測試,接著同一個程式容器可以再派送到正式上線的主機,可以是企業自己的伺服器,或是其他可支援Docker容器的公眾雲服務。

Docker實現了從開發人員的電腦,以至實際上線的環境,皆只要使用同一個程式容器,達到一貫化的自動部署作業,也就是其口號所強調的:「Build Ship Run Anything Anywhere」。這套機制背後的願景──基礎架構的程式化(Infrastructure as Code),也就是讓維運人員擁有程式開發的優點,一來是可以寫程式來控制應用程式的自動部署,再者這些控制程式亦如一般軟體開發一樣有版本控管。諸多Docker的優點,不僅讓開發人員迅速擁抱這項工具,負責應用程式部署、維運的系統維運人員也熱愛Docker,甚至,對於一個人要負責應用程式開發與部署的Full Stack Programmer來說,Docker根本就是救世主了。

在網際網路的發展史上,不乏新創公司關鍵轉型成功的例子,例如知名的照片分享網站Flickr,原本打算開發線上遊戲,但在開發過程中發現了照片分享這個更大的需求,結果這家公司根本沒推出任何一款線上遊戲,卻靠著Flickr大大成功;Twitter一開始則是開發線上播客(Podcast)平臺,但在過程中發覺訊息快速溝通的重要需求,才推出現在我們所認識的Twitter服務;其他大家也都熟悉的PayPal、Instagram、YouTube等等,都是歷經關鍵轉型才找到今天的成功之路。

Docker成功帶動轉型之後,dotCloud公司也順勢更名為Docker,專心開發Docker平臺。不過,Docker這個關鍵轉型的故事有個地方有別於其他,在於Docker所使用的Container技術,其實已經行之有年,並非是Docker第一個發現。但是,就在Docker以開放原始碼專案釋出後,陸續有一些大公司跳出來宣稱早就已經在使用Container技術,然而,為何這些大公司都看不到Container的發展潛力?為何許許多多的開源軟體公司沒抓到這個機會?這個現象點出了另一個值得思考的議題,且待我們下回繼續來討論。

作者簡介


Advertisement

更多 iThome相關內容