jenkins 2.251 jar 部署实战

1. 创建一个任务

在这里插入图片描述

2. 配置项目

在这里插入图片描述

2.1. General

在这里插入图片描述

2.2. 源码管理

  • 配置git

在这里插入图片描述

  • 配置git 及选择添加凭证

在这里插入图片描述

  • 添加凭证,输入gitLab 开通的用户名和密码,完成后点击【添加】按钮
    在这里插入图片描述

2.3. 构建触发器

在这里插入图片描述

2.4. 构建环境

在这里插入图片描述

2.5. Pre Steps

在这里插入图片描述

2.6. Build

在这里插入图片描述

  • Root POM 指的是jenkins 所在服务器上的项目路径,无需填写
  • Goals and options 设置为 install -DskipTests

2.7. Post Steps

在这里插入图片描述

SSH Server
  • Name : 此处需在系统管理>系统配置>Publish over SSH 中添加,添加完成后在此处选择即可
    在这里插入图片描述
Transfers Set
  • Source files : 编译之后的jar包路径 nursing-centre-web/**/*.jar,注意你的项目是否是多模块的
  • Remove prefix : 暂时不填
  • Remote directory :远程服务器的项目路径,此路径不重要 /data/project/nursing-centre
  • Exec command:此处填写服务器执行脚本,常用脚本备份、移动、重启等脚本,先后顺序不可调整

sh /data/project/nursing-centre/nursing-centre-web/bak.sh

#! /bin/bash

#进入脚本所在目录
cd `dirname $0`

day_ymd=$(date +'%Y%m%d')

server_name=$1
if [ -z "$server_name" ];then
  server_name=$(find . -name '*.jar'|head -1)
  if [[ $server_name =~ "/" ]];then
    server_name=${server_name##*/}
  fi
fi

if [ ! -f "$server_name" ];then
  echo "not find server ->  ${server_name}"
  exit 0
fi

suffix_numb=0
for line in $(find ./ -name "${server_name}.${day_ymd}*")
do
  tmp_numb=${line##*-}
  if [ -n "$tmp_numb" ]; then
    expr $tmp_numb + 1 > /dev/null 2>&1
    tmp_numb=$([ $? -ne 0 ] && echo 0 || echo ${tmp_numb})
    if [ $suffix_numb -lt $tmp_numb ]; then
      suffix_numb=$tmp_numb
    fi
  fi
done
suffix_numb=$(expr ${suffix_numb} + 1)

mv ${server_name} ${server_name}.${day_ymd}-${suffix_numb}

exit 0

sh /data/project/nursing-centre/nursing-centre-web/move.sh

#! /bin/bash
cd `dirname $0`
PROJECT_PATH=$(cd `dirname $0`; pwd)
echo $PROJECT_PATH
PROJECT_PATH_TARGET=/root$PROJECT_PATH/target
echo $PROJECT_PATH_TARGET
cp $PROJECT_PATH_TARGET/*.jar .

sh /data/project/nursing-centre/nursing-centre-web/restart.sh

#!/bin/sh
PROJECT_PATH=$(cd `dirname $0`; pwd)
echo 'path' $PROJECT_PATH
PROJECT_NAME=nursing-centre-web-0.0.1-SNAPSHOT.jar
PROJECT_ALL_LOG_NAME=/logs/catalina.out
# stop process
tpid=`ps -ef|grep $PROJECT_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo 'Stop Process...'
    # 是先关闭和其有关的程序,再将其关闭
    kill -15 $tpid
fi
sleep 5

tpid=`ps -ef|grep $PROJECT_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo 'Kill Process!' $tpid
    kill -9 $tpid
else
    echo 'Stop Success!'
fi

# start process
tpid=`ps -ef|grep $PROJECT_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo 'App is already running.'
else
    echo 'App is NOT running.'
    echo 'jar' $PROJECT_PATH$PROJECT_NAME       
    nohup java -jar $PROJECT_PATH/$PROJECT_NAME >/dev/null 2>&1 &
    echo 'Start Success!'
    sleep 2
#    tail -f $PROJECT_PATH$PROJECT_ALL_LOG_NAME
fi

此处3个脚本,需使用chmod +x *.sh 命令添加执行权限

2.8. 构建设置

在这里插入图片描述

2.9. 构建后操作

在这里插入图片描述

全部设置完成后,点击【保存】按钮

3. 立即构建

在这里插入图片描述

3.1. 查看控制台输出

在这里插入图片描述

3.2. 查看linux 服务器项目目录

在这里插入图片描述

3.3. 查看linux 服务器进程

在这里插入图片描述
项目部署完成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值