【Jenkins】持久化

文章目录

持续集成CI

持续集成(Continuous integration,简称CI)指的是频繁地(一天多次)将代码集成到主干。

持续集成的目的就是让产品可以快速迭代,同时还能保证高质量,它的核心措施是将代码集成到主干之间,

必须通过自动化测试,只要有一个测试用例失败,就不能集成。

通过持续集成,团队可以快速从一个功能到另一个功能,简而言之,敏捷开发很大一部分要归功于持续集成。

它的好处主要有两个。

1、快速发现错误。每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易。

2、防止分支大幅偏离主干。如果不是经常集成,主干又在不断更新,会导致以后集成的难度变大,甚至难以集成。

持续部署CD

对于一个完整、成熟的 CI/CD 管道来说,最后的阶段是持续部署。

持续部署的目标是,代码在任何时刻都是可部署的,可以自动将应用发布到生产环境。

实际上,持续部署意味着开发人员对应用的改动,在编写完成后的几分钟内就能及时生效(前提是它通过了自动化测试)。

这更加便于运营团队持续接收和整合用户反馈。

持续部署的前提是能自动化完成测试、构建、部署等步骤。

部署

部署到linux服务器

复制代码
target> scp xxx.jar root@192.168.1.191:/root/

nohup java -jar xxx.jar &

firewall-cmd --state # 查看防火墙状态
firewall-cmd --list-ports # 查看所有放行的端口
firewall-cmd --add-port=8081/tcp # 防火墙开启端口
firewall-cmd --remove-port=8081/tcp

Excute shell

复制代码
mvn package
cd target 
ps -ef | grep jenkinsdemo-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}' | xargs kill -9 | true
nohup java -jar jenkinsdemo-0.0.1-SNAPSHOT.jar &

持续集成好处:

降低风险,由于持续集成不断去构建、编译、测试,可以早期就发现问题,所以修复代价就小一点。

减少重复性工作。

持续交付可供使用的版本。

持续部署已经包含在持续集成里面,持续部署的前提就是持续集成。

相关推荐
路由侠内网穿透41 分钟前
本地部署 GPS 跟踪系统 Traccar 并实现外部访问
运维·服务器·网络·windows·tcp/ip
长河2 小时前
Java开发者LLM实战——LangChain4j最新版教学知识库实战
java·开发语言
Cyan_RA92 小时前
SpringMVC @RequestMapping的使用演示和细节 详解
java·开发语言·后端·spring·mvc·ssm·springmvc
傻傻虎虎3 小时前
【Docker】常用帮忙、镜像、容器、其他命令合集(2)
运维·docker·容器
ZERO_pan4 小时前
服务器装机遇到的问题
运维·服务器
杀气丶4 小时前
Linux下运行芙蕾雅天堂2【俄文简译L2FATER】
运维·服务器·天堂2·l2fater·l2fater.cn
喵手4 小时前
玩转Java网络编程:基于Socket的服务器和客户端开发!
java·服务器·网络
再见晴天*_*5 小时前
SpringBoot 中单独一个类中运行main方法报错:找不到或无法加载主类
java·开发语言·intellij idea
太空的旅行者5 小时前
告别双系统——WSL2+UBUNTU在WIN上畅游LINUX
linux·运维·ubuntu
九章云极AladdinEdu6 小时前
超参数自动化调优指南:Optuna vs. Ray Tune 对比评测
运维·人工智能·深度学习·ai·自动化·gpu算力