jenkins中通过execute shell启动的进程会被杀死的问题(其它进程)
2018-01-17 18:05
876 查看
今天在做自动化jenkins部署,遇到了一个问题.我在执行shell脚本的时候,会把其它进程也杀死,而且本进程也不再执行,查找资源,找到了一篇文章。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202010/27/422c14f2eb6643cb04e71189cb0a887e)
这是因为Jenkins默认会在Build结束后Kill掉所有的衍生进程。
解决方法:
1.重设环境变量build_id
在execute shell输入框中加入BUILD_ID=DONTKILLME,即可防止jenkins杀死启动的java进程
![](https://oscdn.geek-share.com/Uploads/Images/Content/202010/27/9bdeb58076bda6fcc11e793333497bc0)
2.在启动jenkins 的时候禁止jenkins杀死衍生进程(此方法未测试,也是解决办法之一)
修改/etc/sysconfig/jenkins配置,在JENKINS_JAVA_OPTIONS中加入-Dhudson.util.ProcessTree.disable=true。需要重启jenkins生效
此方法配置一次后,所有的job都无需设置BUILD_ID,就能够防止jenkins杀死启动的java进程
图片原url:https://wiki.jenkins.io/display/JENKINS/ProcessTreeKiller
这是因为Jenkins默认会在Build结束后Kill掉所有的衍生进程。
解决方法:
1.重设环境变量build_id
在execute shell输入框中加入BUILD_ID=DONTKILLME,即可防止jenkins杀死启动的java进程
2.在启动jenkins 的时候禁止jenkins杀死衍生进程(此方法未测试,也是解决办法之一)
修改/etc/sysconfig/jenkins配置,在JENKINS_JAVA_OPTIONS中加入-Dhudson.util.ProcessTree.disable=true。需要重启jenkins生效
此方法配置一次后,所有的job都无需设置BUILD_ID,就能够防止jenkins杀死启动的java进程
图片原url:https://wiki.jenkins.io/display/JENKINS/ProcessTreeKiller
相关文章推荐
- 【jenkins】中通过execute shell启动的进程会被杀死的问题
- jenkins中通过execute shell启动的进程会被杀死的问题
- jenkins中通过execute shell启动的进程会被杀死的问题
- jenkins中通过execute shell启动的进程会被杀死的问题
- jenkins中通过execute shell启动的进程会被杀死的问题
- jenkins:通过execute shell启动的进程会被杀死的问题
- Jenkins——应用篇——如何解决execute shell中启动的进程被在Job退出时被杀死问题
- jenkins通过Execute shell启动的进程被kill的问题
- jenkins中通过execute shell启动tocat无法启动问题
- hadoop启动后通过jps查看进程datanode或namenode不存在问题解决
- jenkins中通过JNLP启动slave节点的配置问题
- Linux系统非ROOT用户80端口不能启动tomcat问题的变通办法——通过Iptables端口转发
- Jps介绍以及解决jps无法查看某个已经启动的java进程问题
- 多个Django应用只启动一个uwsgi进程时经常出现502的问题
- 关于火狐双击无法启动只有进程的问题的解决方案
- Jps介绍以及解决jps无法查看某个已经启动的java进程问题
- 解决oracle数据库TNSLSNR.exe进程占用8080端口,导致tomcat无法正常启动问题
- 正在进行调试的Web服务器进程已由Internet信息服务(IIS)终止。可以通过在IIS中配置应用程序池Ping设置来避免这一问题。有关更多详细信息,请参见“帮助”
- 解决无法通过80端口启动jar包问题
- 外部程序通过COM启动AutoCAD时RPC_E_CALL_REJECTED的问题解决办法