jenkins部署ssh过程中遇到的问题

        我们是spring boot项目,在部署过程中,通过jenkins的ssh插件实现远程部署,在ssh的配置中,通过java  -jar启动不了程序,开始认为是jenkins对进程杀死的原因,试着对jenkins启动加上-Dhudson.util.ProcessTree.disable=true,以及对脚本加上BUILD_ID=DONTKILLME,发现还是没有解决问题,在另一台机器上实验一下远程启动tomcat,结果出现了Neither the JAVA_HOME nor the JRE_HOME environment variable is defined这个问题,查询发现需要 /etc/profile 中导入的环境变量,需要在/root/.bashrc中加入相同环境变量。怀疑我没有启动成功的原因可能是这个,为何?应为java -jar也是依赖java的环境,没有在/root/.bashrc中加入环境变量导致的问题,加入java的环境变量后,然后source /root/.bashrc了一下,然后构建了一下任务,发现问题解决了。查询发现/etc/profile与/root/.bashrc存在区别,profile是在用户登陆的时候进行环境变量的初始化,而/root/.bashrc是在开始shell脚本的时候时候进行初始化。对于jenkins ssh的远程执行部分,可能不存在用户登陆,没有profile来初始化,用shell开启,通过/root/.bashrc来初始化,导致没有环境变量的问题。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值