Jenkins 自动终止衍生进程

在 Linux 系统中,用脚本启动服务后,退出当前用户,启动的服务进程会被终止。

挂断信号(SIGHUP)终止程序。

解决:

nohup java -jar spring.jar &

nohup:不挂断运行命令,用户退出或终端关闭,程序仍然运行。

&:后台运行。

https://www.cnblogs.com/jhxxb/p/10987503.html

在 Jenkins 中,每次构建完了后要自动杀掉部署过程中的子进程。

https://wiki.jenkins.io/display/JENKINS/ProcessTreeKiller

最常见的问题就是 tomcat 启动命令执行成功了,但是无法访问。

解决:

Pipeline job

withEnv(['JENKINS_NODE_COOKIE=dontkillme']) {
    sh 'sh /opt/tomcat/bin/startup.sh'
}

普通 job

OLD_BUILD_ID=$BUILD_ID
echo $OLD_BUILD_ID
export BUILD_ID=dontKillMe
# 执行 tomcat 启动脚本
sh /opt/tomcat/bin/startup.sh
# 改回原来的 BUILD_ID 值
export BUILD_ID=$OLD_BUILD_ID
echo $BUILD_ID

不使用 root 用户启动

# yum 方式安装下的配置文件路径
vim /etc/sysconfig/jenkins 

JENKINS_USER="jenkins"

systemctl restart jenkins

https://gofinall.com/70.html

猜你喜欢

转载自www.cnblogs.com/jhxxb/p/13176808.html