jenkins远程执行脚本不退出
-
我在使用Jenkins进行远程部署时,构建后执行的脚本没有正常退出导致。
-
我的脚本没有写错,干的事情就是启动项目。
-
而导致它没有正常退出的原因是:
因为你是从一个非tty环境执行脚本; Jenkins不能正常从你的脚本中退出。
在执行openapi start 命令时,刚启动,pty(伪终端)就断开连接,
解决的办法就是,让脚步在后台运行,也就即使伪终端断开了,项目依然可以启动完成。
其实就是在前面加上nohup;
也就是说,当我们使用nohup命令的的时候,日志会被打印到nohup.out文件中去。
如果我们不做任何处理,会随着每次的重新启动,nohup.out会越来越大。
所以我在我执行的脚本中添加了
cp /dev/null nohup.out
# 这样每次启动时,都会先清空掉这个文件。