开源一款自动构建/部署工具CoolDeploy

前言

本来是想做成视频的,结果花了一天也没录制上,到处是毛病,所以还是写文章吧。

先说一下这个工具解决了什么问题。

他可以结合Github的WebHook功能,当你在本地git push 后,更具你设置的编译命令,自动编译/部署,省去了你上传的时间。

clone

项目地址:

https://github.com/houxinlin/CoolDeploy
复制代码

首先把他clone下来,由于是gradle的项目,所以打包命令是./gradlew bootJar

之后就可以直接运行了,默认端口是5993,默认密码是cooldeploy。

配置

首先做的是生成公钥,当系统拉去你的项目时需要,然后把这个公钥复制到你的github下,这是必须的一步。

image.png

image.png

添加项目

这里以我的博客为例,点击主页增加,输入你的项目路径,注意只能是ssh路径。

image.png

点击加载后会在后台异步加载,结果会通过WebSocket通知你,下面是加载成功后。

image.png

添加构建/部署命令

vue的项目打包分为两步,通过npm build命令打包,然后吧他复制到nginx目录下。

image.png

而shell脚本就是执行最后的一些操作,比如复制,在这里,你可以使用{Project_Home},表示你项目的根路径。

image.png

增加WebHook

进入到你项目的WebHook设置下,输入推送路径,推送路径就是这个系统的地址+webhook/。

设置后。你本地push时,Github会推送具体信息给我们的系统,然后我们的系统会根据你设置的编译命令,自动执行。

image.png

测试

比如我的博客中间位置显示的是Blog,我们要改为博客。

image.png

在本地修改后,通过git push提交,此时只需耐心等待即可,过一会就可以刷新看到效果了。

image.png

Gradle项目

如果你的项目是Gradle的,可以通过系统执行某个Task,他可以识别出你项目中所有Task。

image.png

二次开发

这个项目是使用SpringBoot+(Vue+Vite)开发的,Vue的项目在下面这个地址。

git@github.com:houxinlin/CoolDeploy-Web.git
复制代码

而我们不再使用Nginx,因为部署的时候多了一步,有些麻烦,把Vue打包后,直接放到SpringBoot项目的static目录下即可,让Tomcat去处理他。

おすすめ

転載: juejin.im/post/7032571489165672479