在Azure DevOps Pipelines任务中Linux的agent中通过startup.sh 启动tomcat后会自动关闭的解决方法

本文讲述了在Azure DevOps pipelines中使用Linux agent部署项目时,如何避免Tomcat在Pipeline任务结束后自动关闭的问题。作者分享了通过设置catalina.sh为服务而非直接命令行执行,实现持续服务的方法,包括迁移配置、设置权限和使用servicetomcatstart启动的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

尝试使用Azure DevOps 的Pipelines来自动部署项目时,使用Linux的agent,通过命令行任务 执行./startup.sh来启动tomcat,等到任务结束,tomcat又会被自动关闭。
应该是通过远程终端访问Linux,退出后会把打开的进程关闭,但是查看了很多资料,尝试了以下几种方法都没有奏效
1.使用nohup运行命令
2.使用setsid运行命令
3.使用disown命令
4.在命令行中手动exit

最后通过将tomcat设置成服务解决了这个问题

详细

1.进入tomcat/bin目录,复制catalina.sh到/etc/rc.d/init.d目录下
2.将catalina.sh重命名成tomcat
3.编辑tomcat,在文件开头添加
CATALINA_HOME=/user/apache-tomcat-9.0.41(tomcat的外层路径)
JAVA_HOME=/luser/java/java-11-openjdk(jdk的外层路径)
4.设置权限 chmod 755 /etc/init.d/tomcat

然后在命令行任务中使用 service tomcat start 来代替./startup.sh 启动tomcat就可以解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值