Docker工具分类列表
一、编排和调度程序
1.Kubernetes
Kubernetes是市场上最实用的最受欢迎的容器编排引擎。最初作为一个Google项目开始,成千上万的团队使用它来部署生产中的容器。谷歌声称它每周使用Kubernetes运行数十亿个容器。
该工具通过将构成应用程序的容器分组为逻辑单元进行工作,以便于管理和发现。
工具链接: https://kubernetes.io
使用成本:免费
2.Docker Swarm
Swarm是Docker解决开发人员如何在许多服务器上编排和调度容器的问题的一种方式。从1.12.0版本开始,Swarm已经被包含在Docker Engine中,并且提供了一些高级特性,例如服务发现,负载均衡,扩展和安全性。
Swarm继续将关注简单性和开发者体验作为Docker传统。通常来说Swarm比Kubernetes更容易使用。
工具链接:https://www.docker.com
使用成本:社区版免费
3.Rancher
不仅仅是一个容器编排器,还是一个用于在生产环境中运行Docker的完整的容器管理平台。RancherOS是一个基于容器的操作系统(OS),能够提供诸如全局和本地负载平衡,多主机联网以及卷快照等多种基础架构服务。Rancher集成了本地Docker管理功能,如Docker Machine和Swarm。
工具链接:http://rancher.com/
使用成本:免费
二、持续集成/持续部署(CI/CD)
4.Jenkins
Jenkins是领先的CI工具,使开发和运营团队能够周期性的自动构建和测试应用程序。因此,它已经成为与DevOps齐名的工具。Jenkins是一个独立的基于Java的程序,开箱即用,提供了数百个插件,可以与堆栈中的其他工具集成。该工具使你能够快速配置构建代理,部署工件,然后快速拆除。
使用成本:免费
5.Travis CI
Travis CI是一个免费的开源CI项目,通过自动构建和测试代码更改来提高开发的效率。软件即服务(Saas)平台随即能够对代码更改的成功与否提供即时反馈。Travis CI还能够通过管理部署和通知来自动化项目开发的其他部分。
工具链接:https://travis-ci.org/
使用成本:免费
6.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美元/用户/月
三、记录
7.Logspout
Logspout是帮助管理在Docker容器中运行的程序生成的日志的一个很好的工具。它将容器应用程序日志路由到单个位置(例如,通过HTTP可用的JSON对象或流式端点)。Logspout也有一个可扩展的模块系统。
工具链接:
https://github.com/gliderlabs/logspout
使用成本:免费
8.Fluentd
Fluentd作为一个开源数据收集器工作 - 一个统一和记录所有其他容器日志的容器。拥有500多个插件,Fluentd连接到许多数据源和数据输出来收集事件; 这些被标记为在需要的地方路由它们。这种基于标签的路由可以使复杂的路由清晰地表达。
工具链接:https://www.fluentd.org/
使用成本:免费
9.Logstash
作为Elastic Stack的一部分,Logstash与Beats,Elasticsearch和Kibana一起运行良好。它是一个开源的服务器端处理管道,可以传输和处理日志,事件或其他数据。
工具链接:
https://www.elastic.co/products/logstash
使用成本:免费
10.syslog-ng
使用syslog-ng从各种来源收集日志,并在将它们路由到不同的目的地之前,几乎实时地处理它们。一个值得信赖的日志管理基础架构,syslog-ng将高性能功能与丰富的消息解析和重写选项结合在一起。
工具链接:https://syslog-ng.org/
使用成本:免费(根据要求可提供syslog-ng高级版的价格)
四、服务发现
11.Consul
Consul是一个易于使用的,基于开放标准的服务发现方法,可在FreeBSD,Linux,Mac OS X,Solaris和Windows上运行。构建多数据中心感知,Consul支持多个区域,没有复杂的配置。主要功能包括:服务发现,健康检查和密钥/值存储等。
工具链接:https://www.consul.io/
使用成本:免费
12.Etcd
由CoreOS创建,etcd是为共享配置和服务发现而设计的高可用性键值存储。该工具提供了将数据存储在一组机器上的可靠方法。它专门为运行CoreOS的集群而构建,但etcd也可以在其他操作系统(包括BSD,Linux和OS X)上运行。
工具链接:https://coreos.com/etcd/
使用成本:免费
13.Proxy
Factorish创建了一个简单易用的轻量级(<30mb )容器代理。该工具基于alpine gliderlabs,并以nginx作为http负载平衡器运行。
工具链接:
https://hub.docker.com/r/factorish/proxy/
使用成本:免费
五、构建
14.Packer
Packer是一个Hashicorp工具,用于构建机器映像(包括Docker),并与诸如Ansible,Chef和Puppet等配置管理工具集成。它是一个轻量级的工具,可以在单个源配置的每个主要操作系统上运行。
工具链接:https://www.packer.io/docs/builders/docker.html
使用成本:免费
15.Whales
自动Dockerize与Whales你的应用程序。唯一需要的是在主机上安装并运行Docker。然后,Whales通过输出必要的文件来运行Docker和应用程序。
使用成本:免费
16.Gradle
Gradle插件使得所有的构建脚本都可以与Docker守护进程交互。每个任务委托给Docker-client,然后通过HTTP连接到Docker的远程API。大多数配置参数是可选的。
使用成本:免费
六、管理
17.Portainer
Portainer是Docker环境的开源轻量级管理用户界面。Portainer在Docker API之上工作,并提供Docker的详细概述。功能包括管理容器,图像,网络和卷的功能。
工具链接:https://portainer.io/
使用成本:免费