2015年十大熱門開源Docker開發工具分類盤點

dwd4 9年前發布 | 32K 次閱讀 Docker

想厘清不斷變化的Docker生態系統可能有難度,于是我們樂于幫助你更容易認清現狀。一年前,我曾寫過一篇文章,介紹使用Docker的十大初創企業。這回我們要談論使用Docker的十大開源項目。我對它們進行分門別類,突顯每個項目的側重點。

2015年十大熱門開源Docker開發工具分類盤點

Docker PaaS

雖然Docker是一項最初脫胎于平臺即服務(PaaS)的技術(DotCloud),但有多個項目試圖從Docker構建微型PaaS。

1. Flynn

相關網址:https://github.com/flynn

截至2014年3月961顆星,24個分支。“Flynn好比Sinatra,正如Cloud Foundry好比Rails”

Flynn是眼下最受期待的Docker PaaS之一。這個開源Docker項目有近1000顆星和幾十個分支,甚至還沒有發布。由于git push部署到Docker,不難發現為什么它如此備受期待。Flynn簡化了部署和維護應用程序的工作。Flynn允許自助服務式管理容器化部署,從而 為運營和開發人員簡化了生活,而不是使用復雜的配置管理系統。Flynn還有別于本文介紹的其他項目,原因在于它是受到贊助的開源項目。由于14個以上的 贊助商捐贈了80多萬美元,這個項目絕對值得關注。

2015年十大熱門開源Docker開發工具分類盤點

2. Deis

2015年十大熱門開源Docker開發工具分類盤點

相關網址:https://github.com/opdemand/deis

截至2014年3月1341顆星,120個分支。“你的PaaS。你的規則。”

Deis擁有1300多顆星和120多個分支,它的歷史比Flynn還要悠久,它同樣采用了git push部署方式。Deis充分利用Chef、Docker、Django、Celery、Heroku Buildpacks和Slugbuilder,發揮其魔力。Deis本身就直接支持Ruby、 Python、Node.js、Java、Clojure、Scala、Play、PHP、Perl、Dart和Go。另外,Deis可以使用 Heroku Buildpacks、Docker映像或Chef recipe部署任何對象。Deis可以部署到任何系統上,包括每個公有云、私有云或裸機系統。Deis目前在EC2、Rackspace和 Digital Ocean上支持自動化配置。在即將發表的一篇博文中,我們將更為詳細地比較Deis和Flynn。

3. Dokku

相關網址:https://github.com/progrium/dokku

截至2014年3月4806顆星,384個分支。“通過大約100行Bash,Docker驅動迷你Heroku”

如果你就需要將世界上最小的git push部署到Docker容器功能,不妨關注Dokku。這個小巧的開源項目出自localtunnel(這個超級有用的實用工具可以反向代理你的本地 主機端口至公共URL)的開發商,吸引了最多人的目錄。雖然功能特性不如Deis或Flynn來得豐富,但極容易安裝到Ubuntu 13或12.04 x64上,也極容易使用。

$ wget -qO- https://raw.github.com/progrium/dokku/v0.2.2/bootstrap.sh | sudo DOKKU_TAG=v0.2.2 bash

注意:12.04上的用戶需要在引導穩定版(bootstrapping stable)之前,運行apt-get install -y python-software-properties。

Docker編排

4. CoreOS

2015年十大熱門開源Docker開發工具分類盤點

相關網址:https://github.com/coreos

截至2014年3月2564顆星,237個分支。“CoreOS能夠在極簡的現代操作系統上實現倉庫級計算。”

CoreOS正在開發最佳實踐,以便將容器化應用程序部署到生產環境。它不是一個單一的開源庫,而是組合了許多可以結合使用的開源工具,包括 etcd、docker和systemd。我們之前曾撰文介紹了通過Fig文件生成CoreOS文件,因為從CoreOS開始入手難度頗大。etcd庫被 用作通用的鍵/值存儲區,以便將服務結合起來,并且跨整個應用程序共享服務憑證。不像本文介紹的另外許多項目,CoreOS既是一個開源項目,又是一家風 投資助的初創企業(這就是為什么CoreOS也躋身于我們的十大基于Docker的初創企業榜單)。

5. Fig

相關網址:https://github.com/orchardup/fig

截至2014年3月1526顆星,51個分支。“使用Docker的快速、隔離的開發環境。”

我曾寫過幾篇文章介紹Fig,因為它是本人青睞的面向Docker的小巧實用工具之一。Fig讓你可以編寫一個簡單的fig.yml文件,它就能列 出你應用程序需要的所有Docker容器,并列出它們應該如何聯系起來。一旦你編寫了fig.yml,只要運行fig up –d,你的應用程序就會搭建并運行起來。本博客眼下就由fig來管理。

6. Serf

相關網址:https://github.com/hashicorp/serf

截至2014年3月1652顆星,91個分支。“一款面向服務發現和編排的分散式解決方案,具有輕盈、高可用性和容錯等優點。”

雖然Serf并不是專門針對Docker,但是它與Docker是最佳搭檔。Serf是本人青睞的新開源項目之一,它出自開發Vagrant的那些 人之手。我之前曾寫過一篇文章《分散Docker:如何結合使用Serf和Docker?》,詳見 http://www.centurylinklabs.com/decentralizing-docker-how-to-use-serf- with-docker/,你可以深入了解如何結合使用Serf和Docker,但是在CoreOS和etcd好比是釘槍的地方,它實際上好比是錘子。 Serf在Docker外面也其實很容易使用,可以用在許多不同的場合:etcd和CoreOS其實是相當特定的工具,其靈活性根本比不上Serf(不過 功能絕對強大得很)。

持續集成/持續交付(CI/CD)

7. Drone

2015年十大熱門開源Docker開發工具分類盤點

相關網址:https://github.com/drone/drone

截至2014年3月2516顆星,133個分支。“基于Docker而建的一種持續集成平臺。”

Drone是另一個既是開源項目,又是初創企業的項目,它為你提供了一個簡單的go二進制代碼,用debian文件來分發,為你提供了直接連接到 Docker的整條CI/CD流水線。是不是聽起來很酷?你的代碼根本不需要離開你的筆記本電腦或貴公司的網絡來進行測試,這對政策禁止使用GitHub 和Travis等公共主機托管服務的大公司開發人員來說很重要。Drone的另一個誘人的方面在于,你可以將經過全面測試的容器部署到生產環境中,確信在 兩個地方都使用一模一樣的環境。最后,Drone讓你可以使用所需的任何自定義二進制代碼和配置來構建自定義的Docker容器,這比如今的大多數持續集 成平臺要靈活得多。

用戶界面

8. Shipyard

2015年十大熱門開源Docker開發工具分類盤點

相關網址:https://github.com/shipyard/shipyard

截至2014年3月1443顆星,96個分支。“開源Docker管理平臺”

Shipyard讓你能夠通過單一管理界面,管理各種Docker資源,包括容器、映像、主機及更多資源,而單一管理界面包括:Multi- Host Support、Container Metrics和充分利用REST的API。我喜歡這個部分;想部署Shipyard,你只要運行:

$ docker run -i -t -v /var/run/docker.sock:/docker.sock shipyard/deploy setup

然后,你應該能夠登錄到http://localhost:8000,獲得漂亮的用戶界面(更多的QuickStart文檔可供使用)。棒極了!能夠以圖形化方式查看所有容器很誘人,Shipyard在這方面做得很不賴。

編排

9. Kubernetes

2015年十大熱門開源Docker開發工具分類盤點

相關網址:https://github.com/GoogleCloudPlatform/kubernetes

截至2014年3月3598顆星,501個分支。“谷歌的Docker編排器。”

Kubernetes是使用開源技術實現的容器集群管理解決方案。換句話說,這個系統用于管理多個主機上的容器化應用程序,提供了部署、維護和擴展應用程序的基本機制。其API的目的在于為各種工具、自動化系統和高級API層組成的一個開放生態系統充當基礎。

10. Panamax

相關網址:https://github.com/centurylinklabs/panamax-ui

截至2014年3月510顆星,43個分支。“面向用戶的Docker管理平臺。”

Panamax是一款容器化應用程序構建工具,其開源應用程序市場托管在GitHub。Panamax為使用Docker、Fleet和 CoreOS的用戶提供了一種友好的界面。借助Panamax,你就可以輕松構建、共享及部署任何容器化應用程序,無論該應用程序可能有多復雜。

結束語

如果你按照衍生出來的其他開源項目來衡量某個開源項目的健康狀況,我認為可以客觀地說,Docker稱得上是健康的化身。本文旨在全面概述,而不是深入比較。我們打算在今后詳細介紹其中一些技術之間(比如Flynn vs Devis)的差異。

原文鏈接:http://www.centurylinklabs.com/top-10-open-source-docker-developer-tools/

 本文由用戶 dwd4 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!