Jenkins自动部署Java程序

坑点1.安装新环境需要重启Jenkins
坑点2.执行nohup java后台命令需要加上BUILD_ID=dontKillMe 避免进程被杀

流程

  1. 下载Jenkins war包
  2. 启动Jenkins
  3. 创建流水线
  4. 添加git仓库
  5. 执行编译脚本

附件1 Jenkins重启脚本

#重启Jenkins的脚本
#配置jenkins路径
jarPath=/opt/jenkins/jenkins.war
output=/opt/jenkins/log
pid=`ps -ef | grep $jarPath | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
    echo "kill ${jarPath} 的pid:$pid"
    kill -9 $pid
    sleep 3
fi
#如果添加了环境需要重启Jenkins并执行以下命令
source /etc/profile
echo "start $jarPath"
nohup java -jar $jarPath  > $output 2>&1 &
ps -ef | grep "$jarPath" | grep -v grep

附件2 Java构建发布脚本

path=/opt/project/demo-0.0.1-SNAPSHOT.jar
pid=`ps -ef | grep $path | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
    echo "kill $path 的pid:$pid"
    kill -9 $pid
    sleep 3s
else
    echo "no running"
fi

source /etc/profile
echo "start $path"
#这里需要加上BUILD_ID=dontKillMe避免Jenkins执行shell之后杀掉衍生进程
BUILD_ID=dontKillMe nohup java -jar $path > /opt/project/demo.log 2>&1 &
ps -ef | grep $path | grep -v grep

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐