之前使用过GitLab的CICD流水线,有多种环境,点击即可编译部署,十分的方便。
如何在个人项目中搭建自己的CICD流水线,实现push代码后自动编译并部署呢?这里使用到阿里云 云效DevOps,阿里云效Flow流水线,阿里云效Codeup代码管理。
项目是前后端分离,前端使用Vue,后端是Spring Boot单体。在Codeup中分别有前、后端代码仓库。
流水线大致原理:云效后台创建虚拟机从代码仓库拉取源码,并构建制品(如拉取前端代码npm run build选取dist文件打包成制品;拉取后端Spring Boot项目代码,使用Maven编译成jar包打包成制品),将制品上传到我们的主机并执行事先编写好的部署命令(如先将旧的版本kill,部署新制品nohup java -jar)。
以后端Spring Boot项目为例创建自动编译部署流水线:
1.点击进入代码仓库首页,点击创建流水线;
2.选择流水线模板【Java·构建、部署到阿里云ECS/自有主机】并创建;
3.选择正确的仓库、分支代码,开启代码触发,push代码后自动运行该流水线;
4.编译制品(每月免费使用1800分钟),注意写对正确的打包路径,即目标文件的路径;
5.配置你的主机,让流水线能够自动将制品上传到你的主机并执行部署命令;
6.部署,制品jar包将会保存到你主机的/home/admin/app/package.tgz
中,部署脚本是你主机下载好制品后会执行的命令,并且还可以配置飞书通知。
tar zxvf /home/admin/app/package.tgz -C /home/admin/application/
kill -9 `jps|grep ruoyi-admin.jar|awk '{print $1}'`
nohup java -jar /home/admin/application/ruoyi-admin.jar &
exit
前端Vue代码类似,只是制品的dist文件,部署时的命令要完成的操作就是将dist文件放入Nginx配置文件中对应的路径即可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!