Jenkins执行脚本后进程自动退出

参考文档:https://www.cnblogs.com/liu-sy/p/13389851.html

 

 

 cat  /lib/systemd/system/jenkins.service


Environment="JAVA_OPTS=-Djava.awt.headless=true -Dhudson.util.ProcessTree.disable=true -Dhudson.model.DownloadService.noSignatureCheck=true -Xms256m -Xmx512m -XX:PermSize=256M -XX:MaxPermSize=512m"

 

 

 

在jenkins中配置自动更新部署项目时,如果采取用execute shell启动/关闭tomcat,会发现可以进行关闭tomcat,但是无法启动tomcat,虽然构建会显示执行成功,但是查看进程,tomcat是没有启动的。这是因为Jenkins默认会在Build结束后Kill掉所有的衍生进程。需要进行以下配置,才能避免此类情况发生:

1.重设环境变量build_id

  在execute shell输入框中加入BUILD_ID=DONTKILLME,即可防止jenkins杀死启动的tomcat进程

  

  2.在启动jenkins 的时候禁止jenkins杀死衍生进程

    修改/etc/sysconfig/jenkins配置,在JENKINS_JAVA_OPTIONS中加入-Dhudson.util.ProcessTree.disable=true。需要重启jenkins生效

    此方法配置一次后,所有的job都无需设置BUILD_ID,就能够防止jenkins杀死启动的tomcat进程

posted @ 2022-08-26 11:38  小小仓鼠  阅读(788)  评论(0编辑  收藏  举报