故事缘起

在这里插入图片描述
服务器终于稳定了,项目也迁移完成了,BCVP (前后端分离认证鉴权一整套)框架也平稳度过了两个星期。最近半年以来,一直受到服务器偶尔重启的困扰,看了下原因,是服务器内存被占满了,这还是没有使用呢,要是发布个流程,直接服务器挂掉。

在这里插入图片描述

因为我的8G的服务器,涵盖了开源所有的产品,其中有两个大头:Mysql和Jenkins(其实可以限制它的大小1G左右),数据库可不能放弃吧,就指望着它呢,虽然Mysql腾讯云有卖的,但是舍不得买,开源这六年来,光腾讯云就快两万的花费,还不考虑其他的花销,有没有腾讯云的粉丝老铁,给个好用的优惠券?开个玩笑。

在这里插入图片描述
没办法只能忍痛对Jenkins下手了,当年第一次使用CICD就开心的不得了,还各种改造,自定义镜像,安装皮肤,全栈进行迁移,容器化等等等等,这里有几篇文章,足可见当时的喜爱程度:

《使用Jenkins来发布和代理.NetCore项目》

《Jenkins 安装与项目构建》

《升级Jenkins:发布和代理 VUE 项目》

《升级Jenkins镜像,支持.NET6.0》

《【CI/CD系列】使用Docker安装Jenkins》

在这里插入图片描述
但是在昂贵的服务器面前,我还是决定对Jenkins动手了,正好平时都逛一下技术博客,偶尔看到了一个国产开源的轻量级的运维工具——SPUG吸引到了我,

在这里插入图片描述
通过整体对比,正好能满足我的需求,所以这里给大家分享下,因为是Python和JS开发的,面向中小型企业设计自动化运维平台,无 Agent,非常的轻量。

所以整体下来大概五个服务,总体内存才不到400M,我的服务器一下子就少了2个G,开心到飞起

在这里插入图片描述
八个核心项目都已经迁移完成。

在这里插入图片描述
在这里插入图片描述
开始安装

因为我是docker粉,所以基本干啥都喜欢容器化和DevOps,直接安装

这里要注意下挂载数据问题,要不然下次重启的时候,数据就没有了,这个和Jenkins的思路是一样的,不再赘述


docker run -d --restart=always --name=spug 
-p 5051:80 -v /home/docker_data/spug:/data 
registry.aliyuncs.com/openspug/spug

Spug的优缺点:

优点是:支持主机管理、git代码拉取、脚本执行、定时器、多台机器同时批量执行部署。

还有配置中心,丰富角色权限管理,同时也支持在线web端ssh控制台

内存在500M以内,很不错。

缺少当然也很明显,没有大厂推广,国内社区开源软件都会面临的窘境,就是社区不是很活跃,不过基本也能用。感兴趣可以看看。

1、配置主机
在这里插入图片描述
2、服务器上传指定路径文件

在这里插入图片描述
3、在线执行控制台命令

在这里插入图片描述
4、可以使用配置中心的配置变量

在这里插入图片描述
5、详细的数据配置展示和执行日志

发布速度也很快,从07s到22s,一般30s基本都能完成从拉取代码到发布完成。

在这里插入图片描述
6、丰富的表单权限管理

在这里插入图片描述
7、如果不想用docker,也可以直接用原生命令行方式,效果是一样的

在这里插入图片描述
8、还有很多其他功能

比如告警,日志,配置中心,定时任务和主机管理等等

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐