jenkins自动部署到远程服务器配置(git&maven项目)

1.常规配置

 2.源码管理

3.构建触发器 

4.构建环境 

5.构建 

6.构建后操作 

结束 

可能遇到的错误-----------------------------------

1.错误信息: using GIT_ASKPASS to set credentials

git请求地址改成ssh请求方式,或者使用下面命令修改git配置
git config --system --unset credential.helper

2.启动脚本(供参考)

#!/bin/bash
#待运行jar信息
#JAR_NAME=`ls *.jar|head -1`
JAR_NAME=$2
if [ "$JAR_NAME" = "" ]
then
	echo "warn: 请指定需要运行的jar包: $0 {start|stop|restart|status} jar_name [port]"
        exit 1
fi

APP_NAME=`basename $JAR_NAME .jar`
#JVM参数 -XX:+PrintGCDetails 打印垃圾回收详细信息  -XX:HeapDumpPath 不会自动创建
JVM_OPTS="-server -Xms500m -Xmx500m -XX:+DisableExplicitGC -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m -XX:MinHeapFreeRatio=40 -XX:MaxHeapFreeRatio=70 -XX:+UseG1GC -XX:NewRatio=2 -XX:SurvivorRatio=8 -XX:HeapDumpPath=/home/test/$APP_NAME.dump -XX:+PrintGCTimeStamps"
#支持指定端口运行
PORT=$3
source /etc/profile
#echo $JAVA_CMD
APP_VERSION=`echo $JAR_NAME | grep -o -E '[0-9][0-9\.]{1,6}[0-9]'`

#echo $JAR_NAME
#echo $APP_NAME
#echo $APP_VERSION

###################################
#初始化psid变量(全局)
psid=0

#用于检查程序是否处于运行状态
checkpid() {
   javaps=`$JAVA_HOME/bin/jps -l | grep $JAR_NAME`
 
   if [ -n "$javaps" ]; then
      psid=`echo $javaps | awk '{print $1}'`
   else
      psid=0
   fi
}

##################启动#################
start() {
   checkpid
   
   if [ $psid -ne 0 ]; then
      echo "================================"
      echo "warn: $APP_NAME already started! (pid=$psid)"
      echo "================================"
   else
      echo "Starting $APP_NAME ..."
      #su - 
      #$RUNNING_USER -c "$JAVA_CMD"
      if [ "$PORT" = "" ]
	then
    	    nohup $JAVA_HOME/bin/java $JVM_OPTS -jar $JAR_NAME --spring.profiles.active=test >/dev/null 2>&1 &
	else
            nohup $JAVA_HOME/bin/java $JVM_OPTS -jar $JAR_NAME --server.port=$PORT >/dev/null 2>&1 &
	fi
      checkpid     
      if [ $psid -ne 0 ]
        then
        	echo "[`date`] Startup $APP_NAME $APP_VERSION success.(pid=$psid)"
	        return 0
        else
        	echo "[`date`] Startup $APP_NAME fail."
	        return 1
        fi

   fi
}

#################停止##################
stop() {
   checkpid
 
   if [ $psid -ne 0 ]; then
      echo -n "Stopping $APP_NAME ...(pid=$psid) "
      #su - 
      kill -9 $psid
      if [ $? -eq 0 ]; then
         echo "[OK]"
      else
         echo "[Failed]"
      fi
 
      checkpid
      if [ $psid -ne 0 ]; then
         stop
      fi
   else
      echo "================================"
      echo "warn: $APP_NAME is not running"
      echo "================================"
   fi
}

#################运行状态##################
status() {
   checkpid

   if [ $psid -ne 0 ];  then
      echo "$APP_NAME is running! (pid=$psid)"
   else
      echo "$APP_NAME is not running"
   fi
}

case "$1" in
	'start')
		start
		;;
	'stop')
		stop
		;;
	'restart')
		stop
		start
		;;
	'status')
		status
		;;
      *)
		echo "Usage $0 {start|stop|restart|status} jar_name [port]"

exit 1
	;;
esac

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值