50+ 實用的 Docker 工具推薦

Docker 工具分類列表html

編排和定時任務ios

持續集成/持續開發 (CI/CD)git

監控github

日誌web

安全docker

存儲/卷管理shell

網絡數據庫

服務發現緩存

編譯安全

管理

1
編排和調度

  1. Kubernetes

Kubernetes 是目前市場上可用的容器編排引擎中最受歡迎的一個。最初開始於一個谷歌項目,而後有上千團隊用它在生產環境上部署容器。谷歌宣稱每週使用 Kubernetes 運行數十億的容器。

該工具的工做原理是,把構成應用的容器分組爲更容易管理和發現的邏輯單元。

連接: https://kubernetes.io
費用:免費

  1. Docker Swarm

Swarm 是 Docker 提供的關於在不少服務器上如何編排和調度容器問題的一個解決方案。Swarm 被包含在 1.12.0 版本以後的 Docker Engine 中,提供一些高級特性,例如:服務發現,負載均衡,伸縮能力和安全性。

Swarm 將繼續 Docker 的傳統:關注簡單化和開發者體驗。能夠說,它比 Kubernetes 更容易使用。

連接: https://www.docker.com
成本: 社區版免費

  1. Mesosphere DC/OS

Mesosphere 數據中心操做系統(DC/OS)是一個集成化的開源平臺,用於在 Apache Mesos 分佈式系統內核上構建數據和容器。它將一個數據中心的多個機器,當作一個或多個集羣,不管是在雲端仍是使用預置軟件。DC/OS 可以在同一個環境中部署容器並管理無狀態應用和有狀態負載。

能夠與 Docker Swarm 和 Kubernetes 配合工做。

連接: https://dcos.io/
費用: Mesosphere DC/OS訂購包是根據在你環境中使用的節點數量(物理節點或者虛擬節點)來收費。

  1. Amazon ECS

做爲亞馬遜 web 服務的容器編排解決方案,Amazon ECS 是一個高度可擴展的管理服務,它容許開發者在 EC2 實例上運行容器化應用。它由多個內置組件構成,支持對 Docker 集羣、任務和服務的簡單的調度和部署。

雖然不支持在 EC2 以外運行容器,可是它也包括了 AWS 服務的優勢,例如:CloudTrail、CloudWatch、Elastic Load Balancers 等等。

連接: https://aws.amazon.com/ecs/
費用: Amazon ECS 沒有額外費用。 你只須要購買存儲和運行你的應用所需的 AWS 資源,例如:EC2 實例,EBS 卷。

五、Azure Container Service(AKS)

一種專門用在 Azure 虛擬機上的管理服務(開源),提供必要的工具去建立、配置和管理基於 Docker 容器的基礎設施。ACS 簡化了基於容器的開發和支持 K8S,Mesospere DC/OS 或 Swarm 的部署。

使用應用管理工具去管理和編排,使用標準化的 API 接入。

連接:https://azure.microsoft.com/en-us/services/container-service/
費用:只爲使用的虛擬機及相關的存儲和網絡資源付費

六、Google Container Engine(GKE)

基於 K8S 的 GKE 能夠部署,管理及伸縮運行在谷歌雲上的容器化應用。GKE 的目標是經過提高容器的管理能力去優化IT團隊的生產力。GKS 經過良好的用戶體驗和直觀的命令行工具隱去衆多簡單或者複雜的管理任務。

GKS 基 於K8S。使用 GKE,無需學習 K8S, 理解 K8S 的基本概念,將有助於 GKE 的使用。

連接:https://cloud.google.com/container-engine/
費用:0-5 個節點免費,6 個節點以上,0.15 美圓/小時/集羣(109.50 美圓/月/集羣)

  1. Cloud Foundry's Diego

Cloud Foundry 使用其 Diego 架構來管理「garden」環境中的應用程序容器。Garden 遵循 Linux 的 Open Container Initiative 容器託管指南,並經過 Diego 的其餘組件分離。Diego 元素經過雲控制器提供應用程序調度和管理功能。

連接: https://docs.cloudfoundry.org/concepts/diego
費用: 免費

  1. Marathon

Marathon 是一個創建在 Apache Mesos 上的私有生產級平臺即服務(PaaS)。

Marathon 框架有望擴展 Docker 化應用程序,並在必要時擴展到更多節點以增長可用的資源池。它也能夠做爲一個容器編排工具來爲容器化工做負載提供故障恢復。Marathon 自動處理硬件或軟件故障,並確保應用程序「始終在線」。

連接: https://mesosphere.github.io/marathon/
費用: 免費

  1. HashiCorp Nomad

Nomad 是一款可以調度全部虛擬化,容器化和獨立應用程序的獨立二進制工具,支持 Linux、Mac 和 Windows 。 從單個容器到數千個羣體,Nomad 容許你幾分鐘內在5000臺主機上運行100萬個容器。 Nomad 經過在更少的服務器資源上進行有效地分配,來幫助更多的應用程序提供利用率,同時下降成本。

連接:https://www.nomadproject.io/
費用:免費

  1. Helios

Helios 起初做爲 Spotify 的內部工具,可確保數百個微服務器在數千臺服務器上高效工做。 它可以大規模部署和管理容器,而且配備了基於 HTTP 的 API 以及命令行客戶端。

Helios 不須要特定的網絡拓撲; 它只須要一個 ZooKeeper 集羣和一個運行該工具的機器上的 JVM 。 它是一個頗有用的開源項目。

連接:https://github.com/spotify/helios
費用:免費

  1. Rancher

Rancher 不只僅是容器編排工具,它仍是一個完整的知足在生產環境運維 Docker 的容器管理平臺。

RancherOS 是一個基於容器的操做系統,它能提供不少基礎設施服務,例如:全局和本地的負載均衡,多主機網絡,磁盤卷快照等等。Rancher 也集成了原生的 Docker 管理能力,例如:Docker Machine 和 Swarm 。

連接:http://rancher.com/
是否收費:免費

  1. Nebula

Nebula 是爲 Docker 的編排而生的全新的開源項目,它被設計用來管理大量規模化集羣場景。這個工具是經過根據須要橫向擴展項目組件來達到這一目標。項目目標是要實現對物聯網設備的 Docker 編排,就像對 CDN 或者邊緣計算等分佈式服務的編排同樣好。

Nebula 可以經過調用一個 API 實現同時對上萬個遍及全球的物聯網設備的更新。Bebula 目標是要幫助開發人員和運維人員可以簡化處理物聯網設備,就像處理分佈式 Docker 容器化應用那樣。

連接:http://nebula.readthedocs.io/en/latest/
是否收費:免費

2
持續集成/持續部署 (CI/CD)

  1. Jenkins

Jenkins 是領先的CI工具,使開發和運營團隊可以完成應用程序的自動化構建和測試周期。所以,它已經成爲與 DevOps 同義的工具。Jenkins 是一個獨立的基於 Java 的程序,開箱即用,提供了數百個插件,能夠與棧中的其餘工具集成。該工具使你可以快速配置構建代理,部署工件,而後快速拆除。

費用: 免費

  1. CircleCI

CircleCI 致力於幫助軟件團隊專一於爲客戶提供價值,而不是維護 CI 基礎架構。

CircleCI 經過使 CI 過程更快、更簡單來提升 IT 團隊的工做效率。它支持快速集成並容許你在註冊後當即構建和部署。經過 SSH 進行手動調試,並在開始項目以後當即動態自適應容器的數量。

連接:https://circleci.com/
費用: 第一個容器是免費的;開源項目免費數目+3;額外的容器須要每一個容器每個月 50 美圓

  1. Travis CI

Travis CI 是一個免費的開源 CI 項目,經過自動構建和測試代碼更改來提升開發過程的效率。軟件即服務(Saas)平臺隨即可以對代碼更改的成功提供即時反饋。

Travis CI 還可以經過管理部署和通知來自動化開發過程的其餘部分。

連接: https://travis-ci.org/
費用: 免費

  1. CodeShip

CodeShip 是一個徹底可定製的 CI 平臺,經過與已創建的 Docker 工做流程協做,爲 Docker 提供本地支持。該平臺致力於提升速度和安全性,其工做原理基於自動化測試和部署任務,提供完整的構建環境控制。它提供了對許多其餘雲平臺和編排工具的支持。

連接:https://codeship.com/
費用:
基礎版: 每個月免費構建100次,費用從每個月$49起
專業版: 每個月$75起

  1. GitLab CI

GitLab 整合了 CI、CD 和代碼審查來處理整個應用程序的生命週期。它與 Docker Engine 上的 GitLab runner 結合使用,以支持應用程序的自動化測試和構建。其餘功能還包括活動流、IDE、問題跟蹤和存儲庫管理。GitLab CI 還有一個內置的容器註冊表來掃描和存儲 Docker 存儲庫。

連接: https://about.gitlab.com/features/gitlab-ci-cd/
費用:
社區版:免費,不限用戶數
企業初級版: 每用戶每個月$3.25
企業旗艦版: 每用戶每個月$16.59

  1. Shippable

使用 Shippable 加快軟件交付; 做爲開發人員提供的 SaaS 平臺,它大大縮短了構建、測試和部署代碼到生產所需的時間。Shippable 被設計成一個一站式的自動化平臺,經過提供完整的工做流可視性實現了 DevOps 的實踐和優化創新。簡單的即插即用接口意味着能夠與許多其餘應用程序框架和技術棧輕鬆集成。

連接: https://www.shippable.com/
費用:
免費: c4.large節點,無構建次數限制,1個併發做業
每個月$25/75/150: c4 large/xlarge/2xlarge節點,每一個併發做業
企業級插件支持: 每個月$500起

  1. CodeFresh

CodeFresh 提供了一個完整的工具鏈,使用它開發人員能夠建立和自動化交付管道。 這些 Docker 本地 CI/C D管道基於 Kubernetes 構建,經過緩存提供快速而高效的資源管理。CodeFresh 將企業級的註冊表與 Kubernetes 的無縫鏈接和部署相結合。

連接: https://codefresh.io/
費用:
免費(僅限公開的倉庫)
基礎版: 每個月$99起 (公開的&私有的倉庫)
專業版: 每個月$299,使用SSH的專用節點

  1. Buddy

當即構建、測試和部署應用程序。Buddy 是一個 CI/CD 和用戶反饋平臺,擁有友好的用戶界面,快速集成以及使得持續部署更加高效的工具。它支持全部流行的語言和框架,包括 Angular,Ruby,Python,PHP/Laravel,Node.js 和 .NET Core。

連接: https://buddy.works/
費用:
自由職業者: 每個月$49
團隊: 每個月$99
軟件做坊: 每個月$199
Mega: 每個月$299

  1. Drone

做爲一個開源 CI 和部署即服務的平臺,Drone 構建在 GO 語言和 Docker 的容器技術之上。該平臺無需安裝,配置和服務器維護,而且無縫集成了 BitBucket,Heroku,GitHub 等工具,可以自動進行代碼構建,測試和部署。

連接: https://drone.io/
費用:
Nano: $125/月
Micro: $250/月
Mega: $500/月

  1. Wercker

做爲一個 Docker 原生 CI 和 CD 自動化平臺,它用來幫助軟件開發者構建和部署他們的應用和複雜的微服務架構。以自然集成了 Kubernetes 爲特徵,Wercker 讓你的部署工做流自動化,這樣你就能夠聚焦在構建應用上了。

連接: http://www.wercker.com/
費用: 社區版: 免費; 虛擬專用管道: $350起/月

3
監控

  1. Sumo Logic

Sumo Logic 是一款雲原生日誌審查工具,可提供高級分析,可視化和報警選項。其度量監控解決方案提供實時安全和操做信息,並容許你診斷和解決全部應用和基礎架構問題。機器學習分析還意味着在威脅和異常成爲問題並影響最終用戶以前,快速發現和預測威脅和異常。

連接:https://www.sumologic.com/
免費:天天最高500MB
專業:日誌和指標:$90/月,1GB /天
企業:日誌和指標:$150/月,1GB /天

  1. Prometheus

Prometheus 由 SoundCloud 開發,是一個開源的系統監控和警報工具包。它包含許多方面的監控,例如度量標準生成和收集,結果可視化以及發生異常時的警報功能。 Prometheus 擅長於記錄數字時間序列,並補充了以機器爲中心的監控以及高度動態的面向服務的體系結構。

連接:https://prometheus.io/
費用:免費

  1. Sysdig

Sysdig 開源版是全部 Sysdig 產品的核心技術。該開源版工具旨在提供詳細的單機故障定位,而且以基於接口的命令行方式工做。

連接: https://www.sysdig.org/
費用:
開源版: 免費
基礎版: $20/月
專業雲版: $30/月
專業軟件: 價格面議

  1. Sysdig Monitor

Sysdig Monitor(正式叫法爲 Sysdig Cloud )是 Sysdig 用來生產並分析系統級信息和實時數據的商業解決方案。旨在做爲一個 Linux 系統級別的故障定位工具,它提供了深刻的容器可視化,在 Docker 環境中很是有用。

連接: https://sysdig.com/product/how-it-works/
費用: 根據雲和軟件版本靈活訂價

  1. Datadog

Datadog 是一個基於軟件即服務的運行在大規模雲環境上的數據分析平臺,它能從服務器,數據庫和應用程序中生成並收集度量指標或數據事件。該全棧監控服務提供對 Docker、Kubernetes 和 Mesos 的支持。

連接:https://www.datadoghq.com/
費用:
免費版:最多5個主機
專業版: $15/主機/月
企業版: $23/主機/月

  1. New Relic

做爲行業領袖,New Relic 是一個純粹的基於軟件即服務的性能管理解決方案,它能讓開發者實時的診斷並肯定應用程序的性能問題。它的應用性能監控(APM)可以提供即時可視化,而且在基礎設施內的 Linux 代理可以自動收集 Docker 容器度量指標(運行在基礎主機上的)。

連接: https://newrelic.com/
費用:
自託管環境: 專業版 $149/月; 基礎版: $75/月
基於雲的可選配置: 取決於供應商和實例大小、運行時長和數量。

  1. cAdvisor

Google 的 cAdvisor(Container Advisor) 是一個監控解決方案,它分析在 Docker 中運行的容器中的全部性能特徵和資源使用狀況。 該工具將生成並收集容器度量標準,例如網絡統計信息,資源隔離參數以及資源使用狀況的完整歷史記錄。

連接: https://github.com/google/cadvisor
費用:免費

4
日誌

  1. Logspout

Logspout 是幫助管理在 Docker 容器中運行的程序生成的日誌的一個很好的工具。 它將容器應用日誌路由到單獨位置(例如,傳送到 JSON 對象或經過 HTTP 可用的流式端點)。 Logspout 也有一個可擴展的模塊系統。

連接:https://github.com/gliderlabs/logspout
費用:免費

  1. Fluentd

Fluentd 是一個開源數據收集器 —— 統一和記錄全部其餘容器日誌的容器。 Fluentd 擁有 500 多個插件,可鏈接到許多數據源和數據輸出來收集事件,並進行標記以在須要的地方路由它們。這種基於標籤的路由可使複雜的路由簡潔地表達出來。

連接:https://www.fluentd.org/
費用:免費

  1. Logstash

做爲 Elastic Stack 的一部分,Logstash 與 Beats,Elasticsearch 和 Kibana 一塊兒運行會很是不錯。 它是一個開源的服務器端處理管道,能夠傳輸和處理日誌、事件或其餘數據。

連接:https://www.elastic.co/products/logstash
費用:免費

  1. syslog-ng

使用 syslog-ng 從各類資源上採集日誌,而且在轉發到不一樣的目的地以前,幾乎實時地處理這些日誌。做爲一個可靠的日誌管理基礎架構,syslog-ng 結合了高性能處理和豐富的消息解析及重寫能力。

連接: https://syslog-ng.org/
費用: 免費 (高級版根據需求訂價)

5
安全

  1. Clair

Clair 是一個開源項目,旨在識別和分析 Docker 和 appc 應用容器中的漏洞。Clair 按期從自定義和可配置的資源組中提取漏洞元數據,以便於識別這些容器鏡像(包括其上游)中的威脅。

連接: https://coreos.com/clair/docs/latest/
費用: 免費

  1. Aqua Security

Aqua Security 可以工做在任何平臺上,經過提供全棧安全來保護基於容器的應用程序。做爲專用平臺, Aqua Security 在開發階段甚至更早就能完全的掌控你的容器環境和進程。它是一個綜合性的工具,可以提供徹底可視化的管理。

連接: https://www.aquasec.com/
費用: 組合訂價:所選軟件計劃費用加上必需的虛擬機 Azure 基礎設施費用。

  1. Twistlock

Twistlock Security Suite 旨在解決基於容器的應用程序中的安全問題。它是一個端到端的安全解決方案,經過增長對 Docker 容器工做方式的監控層數來檢測漏洞。

Twistlock 加固容器鏡像,而且在應用程序的生命週期過程當中執行安全策略。

連接: https://www.twistlock.com/
費用: 軟件訂價是根據所選的訂閱版和基礎設施選項來決定的。

  1. Docker Bench for Security

Docker Bench for Security 是一個能夠在任意 Docker 主機上運行的預構建打包容器。它是一組須要使用 root 用戶執行的 Bash shell 腳本。該測試檢查在生產中部署 Docker 容器的常見最佳安全實踐。

連接: https://hub.docker.com/r/docker/docker-bench-security/
費用: 免費

  1. Docker Notary

Notary 是一個開源的 Docker 項目,提供了在數據收集中的安全性。運行 Notary 服務來發布和管理任意內容。對發佈的集合進行數字簽名,並容許用戶驗證該內容的完整性和來源。

連接: https://github.com/docker/notary
費用: 免費

6
Storage/Volume 管理

  1. Convoy

由 Rancher 建立的 Docker Volume Plugin ,用於管理持久性容器卷。Convoy 是一個開源的 Docker volume 驅動程序,能夠在任何地方對 Docker 數據捲進行快照、備份和恢復。 它在 AWS 上建立 Docker 數據卷 ,並提供全部的 Elastic Block Store 功能和性能支持。同時,會獲取現有的 EBS 卷並使用它來生成附加到 Docker 容器的數據卷。

連接: https://github.com/rancher/convoy
費用: 免費

  1. Portworx

Portworx 是一個分散存儲解決方案,用於持久性、共享和複製卷; 它能夠大規模地自動部署和運行數據服務。

連接: https://portworx.com/
費用: 免費

  1. Blockbridge

Blockbridge Volume Plugin 爲具備高級安全性、移動性、備份和恢復功能的容器應用程序提供高性能存儲。經過在 Docker 1.13+ 上的 「Managed Docker Plugin」 ,能體驗到 Docker 原生的安裝管理和生命週期管理。

連接: http://www.blockbridge.com/
費用: 免費

  1. Flocker

使用此開源數據 volume 協調器可輕鬆管理 Docker 式的應用程序和容器存儲。

Docker 容器的短暫特性意味着當容器被刪除時,其存儲將丟失。Flocker 容許你在主機更改時經過遷移數據和容器來永久存儲數據。

連接: https://clusterhq.com/flocker/
費用: 免費

7
網絡相關

  1. flannel

Flannel 是一種簡單易用的方法,專爲 Kubernetes 而設計,可經過在集羣中的多個節點之間使用 Layer 3 IPv4 網絡來配置安全網絡結構。它並不控制容器如何與主機平臺聯網,而只是(控制)如何在主機之間傳輸流量。

連接: https://coreos.com/flannel/docs/latest/
費用: 免費

  1. Weaveworks

Weaveworks 爲開發人員提供了一種高效的方式來鏈接、觀察和控制 Docker 容器。 它建立了一個靈活的虛擬網絡基礎設施,鏈接在已部署在多個主機上的容器之間。

Weaveworks 擴展了像 Kubernetes 和 Docker Swarm 這樣的容器編排器,提升了效率,並簡化了生產中容器的管理。

連接: https://www.weave.works/
費用:
標準版: 每一個節點每個月$30或每一年$300
企業版: 每一個節點每個月$150或每一年$1500

  1. Project Calico

Calico 是一個高度可擴展的開源項目,提供了對虛擬網絡的 Layer 3 方法,可支持跨無數計算主機上的大量虛擬機集羣。此工具的簡化網絡模型設計支持爲你的每一個工做負載配置細粒度的鏈接策略,並容許集中管理 SDN 。

連接: https://www.projectcalico.org/getting-started/docker/
費用: 免費

8
服務發現

  1. Consul

Consul 是一個易於使用的、基於開放標準的服務發現方法,可在 FreeBSD、Linux、Mac OS X、Solaris 和 Windows 上運行。Consul 支持多個地區多數據中心,並沒有需複雜的配置。主要功能包括:服務發現、健康檢查和鍵/值存儲等。

連接: https://www.consul.io/
費用: 免費

  1. Etcd

etcd 是由 CoreOS 建立的,爲共享配置和服務發現而設計的,一個高可靠的 key-value 存儲。該工具提供了一個可靠的方式在集羣機器上來存儲數據。它是專門爲運行 CoreOS 的集羣而構建的,同時也能夠工做在其餘操做系統上,包括 BSD、Linux 和 OS X 。

連接: https://coreos.com/etcd/
費用: 免費

  1. Proxy

Proxy 做爲一個簡單易用的輕量級容器,由 Factorish 建立。該工具基於 alpine/gliderlabs ,並使用 Nginx 做爲 HTTP 負載均衡器。

連接: https://hub.docker.com/r/factorish/proxy/
費用: 免費

9
構建

  1. Packer

Packer 是一個 Hashicorp 工具,用於構建機器鏡像(包括 Docker ),與配置管理工具集成(像 Ansible,Chef 和 Puppet )。它是一個輕量級工具,只須要經過一個源配置,就能夠運行在各個主流 OS 上。

連接: https://www.packer.io/docs/builders/docker.html
費用: 免費

  1. Whales

經過 Whales ,能夠自動 Docker 化你的應用程序。惟一須要的是在宿主機器上安裝並運行 Dokcer 。而後,Whales 就能夠經過輸出必需文件的方式,用 Docker 來運行你的應用程序。

費用: 免費

  1. Gradle

Gradle 插件使得全部的構建腳本與 Docker 守護進程交互更簡單。每一個任務委託給 Docker-client,而後經過 HTTP 鏈接到 Docker 的遠程 API。大多數配置參數是可選的。

費用:免費

10
管理類

  1. Portainer

Portainer 是 Docker 環境中的開源的輕量級管理用戶界面。Portainer 工做在 Docker API 之上,並提供 Docker 的詳細概述。其功能包括管理容器、圖像、網絡和卷的功能。

連接:https://portainer.io/費用: 免費

相關文章
相關標籤/搜索