告别了Jenkins,我将开源的所有项目迁移到了Spug

2023-11-23 14:06:13 浏览数 (3)

寂寥小雪闲中过,斑驳轻霜鬓上加)

01

PART

故事缘起

服务器终于稳定了,项目也迁移完成了,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,开心到飞起

八个核心项目都已经迁移完成。

02

PART

开始安装

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

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

代码语言:javascript复制
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、还有很多其他功能

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

更多功能大家自行挖掘吧,今天就先分享到这里- ̗̀(๑ᵔ⌔ᵔ๑)

1 人点赞