推荐 10 款超实用的企业级开源应用!

4,388 阅读7分钟

哈喽,大家好我是霸戈,今天给大家分享一些,我个人觉得非常实用的的企业级开源软件,都是一些我在工作工程中使用过的开源软件包含:代码管理、CD/CD、API管理等等,欢迎大家补充和收藏。

Gitlab

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,可以直接使用 Gitlab 官方提供的git仓库管理服务,有条件的也可以使用Gitlab自己搭建。

推荐自己搭建 Gilab 服务器,直接使用官方的服务会气死,网络超慢有时候代码都推不上去,必需得用梯子才行。 GitLab 除了当做 Git仓库外还可以使用它来作容器仓库CI/CD工具,我之前自己搭建的时候就是用Gitlab做CI/CD的,这样也省去了搭建和运维jenken

如果你想知道gitlab如何做CI/CD的,推荐你查看这篇文章:用 GitLab 做 CI/CD 是什么感觉,太强了!!

传送门:about.gitlab.com/

Nexus Maven 仓库

在使用Nexus之前一直白漂的阿里云的 Maven 仓库,但是好像收购teambition后合并了,就感觉用起来好复杂了就不推荐了吧,但是maven仓库加速还是很良心的,只能说真香!

目前所在公司用的Nexus,也是自己搭建的,有完整的权限管理、支持LDAP等,完全可以满足企业的需求。

传送门:repository.sonatype.org/

Yapi

第一次使用这个工具的时候,当时还是在哈啰出行工作,第一次打开就感觉页面非常的简洁,使用过后api管理功能也非常的完善,然后就百度一下yapi发现是一个开源的api管理工具,同时也支持内网部署,非常适合一些初创型企业使用。

特性

  • 基于 Json5 和 Mockjs 定义接口返回数据的结构和文档,效率提升多倍
  • 扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性
  • 类似 postman 的接口调试
  • 自动化测试, 支持对 Response 断言
  • MockServer 除支持普通的随机 mock 外,还增加了 Mock 期望功能,根据设置的请求过滤规则,返回期望数据
  • 支持 postman, har, swagger 数据导入
  • 免费开源,内网部署,信息再也不怕泄露了

传送门:hellosean1025.github.io/yapi/

JumpServer

JumpServer全球首款开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 规范的运维安全审计系统。

特性
  • 开源: 零门槛,线上快速获取和安装;
  • 分布式: 轻松支持大规模并发访问;
  • 无插件: 仅需浏览器,极致的 Web Terminal 使用体验;
  • 多云支持: 一套系统,同时管理不同云上面的资产;
  • 云端存储: 审计录像云端存储,永不丢失;
  • 多租户: 一套系统,多个子公司和部门同时使用;
  • 多应用支持: 数据库,Windows远程应用,Kubernetes。

传送门:www.jumpserver.org/

Yearning SQL 审核平台

前段时间新来一位同事,使用OA申请了堡垒机权限,然后使用堡垒机直接连接了生产数据库,执行一条update语句没有加where条件,万幸的是只是一个辅表非主表,从对面的我也捏了一把汗啊!

所以对于中小型企业搭建SQL 审核平台也是必不可少的,而 Yearning 正是面向中小型企业的轻量级MySQL SQL语句审核平台.提供查询审计,SQL审核等多种功能。

特性

  • SQL 查询
  • SQL 审核
  • 推送
  • 用户权限及管理
  • 其他
  • AutoTask 自动执行

传送门:yearning.io/

OpsManage

OpsManage 是一款进行设备资产、代码部署、应用部署、计划任务的管理平台,结合ansible进行自动化运维,可以在很大程度上解放运维工程师的双手。类似的运维平台还有腾讯的蓝鲸运维管理平台。

传送门:github.com/welliamcao/…

Arthas

Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。

当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决:

  • 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
  • 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
  • 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
  • 线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
  • 是否有一个全局视角来查看系统的运行状况?
  • 有什么办法可以监控到JVM的实时运行状态?
  • 怎么快速定位应用的热点,生成火焰图?
  • 怎样直接从JVM内查找某个类的实例?

Arthas支持JDK 6+,支持Linux/Mac/Windows,采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。

Sonar

Sonar(SonarQube)是一个开源平台,用于管理源代码的质量。Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。支持的语言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。

特性

  • 代码覆盖:通过单元测试,将会显示哪行代码被选中
  • 改善编码规则
  • 搜寻编码规则:按照名字,插件,激活级别和类别进行查询
  • 项目搜寻:按照项目的名字进行查询
  • 对比数据:比较同一张表中的任何测量的趋势

禅道

禅道是第一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。

特性

  • 产品管理:包括产品、需求、计划、发布、路线图等功能。
  • 项目管理:包括项目、任务、团队、build、燃尽图等功能。
  • 质量管理:包括bug、测试用例、测试任务、测试结果等功能。
  • 文档管理:包括产品文档库、项目文档库、自定义文档库等功能。
  • 事务管理:包括todo管理,我的任务、我的Bug、我的需求、我的项目等个人事务管理功能。
  • 组织管理:包括部门、用户、分组、权限等功能。
  • 统计功能:丰富的统计表。
  • 搜索功能:强大的搜索,帮助您找到相应的数据。
  • 灵活的扩展机制,几乎可以对禅道的任何地方进行扩展。
  • 强大的api机制,方便与其他系统集成。

XXL-JOB

XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。

特性

  • 简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手;
  • 动态:支持动态修改任务状态、启动/停止任务,以及终止运行中任务,即时生效;
  • 调度中心HA(中心式):调度采用中心式设计,“调度中心”自研调度组件并支持集群部署,可保证调度中心HA;
  • 执行器HA(分布式):任务分布式执行,任务"执行器"支持集群部署,可保证任务执行HA;
  • 注册中心: 执行器会周期性自动注册任务, 调度中心将会自动发现注册的任务并触发执行。同时,也支持手动录入执行器地址;
  • 弹性扩容缩容:一旦有新执行器机器上线或者下线,下次调度时将会重新分配任务;
  • 路由策略:执行器集群部署时提供丰富的路由策略,包括:第一个、最后一个、轮询、随机、一致性HASH、最不经常使用、最近最久未使用、故障转移、忙碌转移等;
  • ...

如果你有好的软件或者工具分享,记得在评论区留言哦!