当前位置: 首页 > article >正文

完美解决Jenkins重启后自动杀掉衍生进程(子进程)问题

完美解决Jenkins重启后自动杀掉衍生进程(子进程)问题

本文中使用的Jenkins版本为Version 2.452.3

先罗列一下前置问题:Jenkins任务构建完成自动杀掉衍生进程

用过Jenkins的都知道,Jenkins任务构建完成后,是会自动杀掉衍生进程,这是为了释放系统资源和确保任务执行的可靠性和安全性,当在本机执行一些任务进程的时候,需要的是部署完成之后不能结束掉进程的(常见的是Java项目),网上针对这个问题的解决方案大致是这几种:

  • 加参数
    比如:BUILD_ID=dontKillMe,JENKINS_SERVER_COOKIE=dontKillMe, JENKINS_NODE_COOKIE=dontKillMe等等之类的,代码示例:
BUILD_ID=dontKillMe nohup java -jar xxx.jar >log.out 2>&1 &
  • 添加全局属性
    在这里插入图片描述
  • 修改Jenkins启动配置
    直接修改Jenkins 的service文件,/lib/systemd/system/jenkins.service,在Environment参数中增加参数-Dhudson.util.ProcessTree.disable=true,这种就是不需要在每个任务的shell中添加BUILD_ID这类参数
    在这里插入图片描述

上面这几种方法是解决一次构建之后不杀衍生进程的方法,但是!!如果Jenkins重启了,那么之前所有构建部署的进程全部都会被自动杀掉了

解决方法就是 使用SSH执行部署,即在本机上也同样使用SSH来进行部署,跟部署到远程服务器一样,这样即使本机上Jenkins重启了,也不会影响对应的子进程,相关的子进程也不会结束掉
在这里插入图片描述


http://www.kler.cn/a/287033.html

相关文章:

  • vscode导入模块不显示类型注解
  • 《重生到现代之从零开始的C++生活》—— 类和对象1
  • [HCTF 2018]WarmUp
  • 解决conda create速度过慢的问题
  • Excel 技巧17 - 如何计算倒计时,并添加该倒计时的数据条(★)
  • 一文了解如何在Qt中间集成Halcon窗口并在子线程显示(附工程源码下载链接)
  • ​哈哈题库​邀请书
  • [Day 68] 區塊鏈與人工智能的聯動應用:理論、技術與實踐
  • 如何在 CentOS 6 上安装 Nagios
  • 噪音消除模块调研
  • selenium(一)基于java、元素定位
  • 697.数组的度
  • 超级会员卡积分收银系统源码,一站式解决方案,可以收银的小程序 带完整的安装代码包以及搭建部署教程
  • 探讨Facebook开户广告起充多少:全球标准与优势解析
  • 0基础学习Python路径(41)paramiko模块
  • 性能优化:提升TMS运行效率的策略
  • 【HuggingFace Transformers】LlamaModel源码解析
  • AI写的不用游标派发明细数量例子
  • Kettle发送邮件功能如何配置以实现自动化?
  • 七. 部署YOLOv8检测器-load-save-tensor
  • C#——类与结构
  • 后端输出二进制数据,前端fetch接受二进制数据,并转化为字符输出
  • Etl加工建模方式分类使用
  • BITCN合集(BITCN 、BITCN-GRU、BITCN-BIGRU、BITCN-LSTM、BITCN-BILSTM、BITCN-SVM)
  • HTML5 全屏API讲解
  • k8s sa