容器生態系統比以往任什麼時候候都發展更快,拓展更迅速,與此同時,還出現了不少 Docker 工具和服務,僅僅是理解現有的這些選項,都是一項使人畏懼的任務。無論你是初學者仍是專家,是開發者仍是持續集成工程師,SRE 仍是平臺架構師,這份列表都將是你的指南,幫助你理解最受歡迎的產品,並在每個相應開發階段優化對接 Docker。ios
Docker 工具分類列表git
編排和定時任務github
持續集成/持續開發 (CI/CD)web
監控docker
日誌安全
安全服務器
存儲/卷管理網絡
網絡架構
服務發現負載均衡
編譯
管理
1
編排和調度
Kubernetes 是目前市場上可用的容器編排引擎中最受歡迎的一個。最初開始於一個谷歌項目,而後有上千團隊用它在生產環境上部署容器。谷歌宣稱每週使用 Kubernetes 運行數十億的容器。
該工具的工做原理是,把構成應用的容器分組爲更容易管理和發現的邏輯單元。
連接: https://kubernetes.io
費用:免費
Swarm 是 Docker 提供的關於在不少服務器上如何編排和調度容器問題的一個解決方案。Swarm 被包含在 1.12.0 版本以後的 Docker Engine 中,提供一些高級特性,例如:服務發現,負載均衡,伸縮能力和安全性。
Swarm 將繼續 Docker 的傳統:關注簡單化和開發者體驗。能夠說,它比 Kubernetes 更容易使用。
連接: https://www.docker.com
成本: 社區版免費
Mesosphere 數據中心操做系統(DC/OS)是一個集成化的開源平臺,用於在 Apache Mesos 分佈式系統內核上構建數據和容器。它將一個數據中心的多個機器,當作一個或多個集羣,不管是在雲端仍是使用預置軟件。DC/OS 可以在同一個環境中部署容器並管理無狀態應用和有狀態負載。
能夠與 Docker Swarm 和 Kubernetes 配合工做。
連接: https://dcos.io/
費用: Mesosphere DC/OS訂購包是根據在你環境中使用的節點數量(物理節點或者虛擬節點)來收費。
做爲亞馬遜 web 服務的容器編排解決方案,Amazon ECS 是一個高度可擴展的管理服務,它容許開發者在 EC2 實例上運行容器化應用。它由多個內置組件構成,支持對 Docker 集羣、任務和服務的簡單的調度和部署。
雖然不支持在 EC2 以外運行容器,可是它也包括了 AWS 服務的優勢,例如:CloudTrail、CloudWatch、Elastic Load Balancers 等等。
連接: https://aws.amazon.com/ecs/
費用: Amazon ECS 沒有額外費用。 你只須要購買存儲和運行你的應用所需的 AWS 資源,例如:EC2 實例,EBS 卷。
一種專門用在 Azure 虛擬機上的管理服務(開源),提供必要的工具去建立、配置和管理基於 Docker 容器的基礎設施。ACS 簡化了基於容器的開發和支持 K8S,Mesospere DC/OS 或 Swarm 的部署。
使用應用管理工具去管理和編排,使用標準化的 API 接入。
連接:https://azure.microsoft.com/en-us/services/container-service/
費用:只爲使用的虛擬機及相關的存儲和網絡資源付費
基於 K8S 的 GKE 能夠部署,管理及伸縮運行在谷歌雲上的容器化應用。GKE 的目標是經過提高容器的管理能力去優化IT團隊的生產力。GKS 經過良好的用戶體驗和直觀的命令行工具隱去衆多簡單或者複雜的管理任務。
GKS 基 於K8S。使用 GKE,無需學習 K8S, 理解 K8S 的基本概念,將有助於 GKE 的使用。
連接:https://cloud.google.com/container-engine/
費用:0-5 個節點免費,6 個節點以上,0.15 美圓/小時/集羣(109.50 美圓/月/集羣)
Cloud Foundry 使用其 Diego 架構來管理「garden」環境中的應用程序容器。Garden 遵循 Linux 的 Open Container Initiative 容器託管指南,並經過 Diego 的其餘組件分離。Diego 元素經過雲控制器提供應用程序調度和管理功能。
連接: https://docs.cloudfoundry.org/concepts/diego
費用: 免費
Marathon 是一個創建在 Apache Mesos 上的私有生產級平臺即服務(PaaS)。
Marathon 框架有望擴展 Docker 化應用程序,並在必要時擴展到更多節點以增長可用的資源池。它也能夠做爲一個容器編排工具來爲容器化工做負載提供故障恢復。Marathon 自動處理硬件或軟件故障,並確保應用程序「始終在線」。
連接: https://mesosphere.github.io/marathon/
費用: 免費
Nomad 是一款可以調度全部虛擬化,容器化和獨立應用程序的獨立二進制工具,支持 Linux、Mac 和 Windows 。 從單個容器到數千個羣體,Nomad 容許你幾分鐘內在5000臺主機上運行100萬個容器。 Nomad 經過在更少的服務器資源上進行有效地分配,來幫助更多的應用程序提供利用率,同時下降成本。
連接:https://www.nomadproject.io/
費用:免費
Helios 起初做爲 Spotify 的內部工具,可確保數百個微服務器在數千臺服務器上高效工做。 它可以大規模部署和管理容器,而且配備了基於 HTTP 的 API 以及命令行客戶端。
Helios 不須要特定的網絡拓撲; 它只須要一個 ZooKeeper 集羣和一個運行該工具的機器上的 JVM 。 它是一個頗有用的開源項目。
連接:https://github.com/spotify/helios
費用:免費
Rancher 不只僅是容器編排工具,它仍是一個完整的知足在生產環境運維 Docker 的容器管理平臺。
RancherOS 是一個基於容器的操做系統,它能提供不少基礎設施服務,例如:全局和本地的負載均衡,多主機網絡,磁盤卷快照等等。Rancher 也集成了原生的 Docker 管理能力,例如:Docker Machine 和 Swarm 。
連接:http://rancher.com/
是否收費:免費
Nebula 是爲 Docker 的編排而生的全新的開源項目,它被設計用來管理大量規模化集羣場景。這個工具是經過根據須要橫向擴展項目組件來達到這一目標。項目目標是要實現對物聯網設備的 Docker 編排,就像對 CDN 或者邊緣計算等分佈式服務的編排同樣好。
Nebula 可以經過調用一個 API 實現同時對上萬個遍及全球的物聯網設備的更新。Bebula 目標是要幫助開發人員和運維人員可以簡化處理物聯網設備,就像處理分佈式 Docker 容器化應用那樣。
連接:http://nebula.readthedocs.io/en/latest/
是否收費:免費
連接:https://mp.weixin.qq.com/s/LbyYRffdIOHHChaQgyiVMA
https://mp.weixin.qq.com/s/hbdOdykuwgTcCgakerqewQ