zoukankan      html  css  js  c++  java
  • Jenkins部署springboot项目

    记录jenkins如何部署springboot项目(jar类型的)

    一、首先需要先配置好jenkins的基本配置(jdk、maven……),可在系统管理——>>全局工具配置中进行配置。

           配置ssh内容:

               在系统管理-》系统设置里,找到Publish over SSH(需要安装Publish over SSH插件)
     
     
    2、然后就是配置部署项目的东西了。
     
     构建环境中勾选,代码构建的过程中会将日志打印出来
     
     
     Post Steps 配置:
         选择如下:

    Transfer SetSource files:表示要上传的本地的war包及路径,可到工作空间去看

    Remove prefix:表示要上传时要去除的文件夹。即仅仅上传war包

    remote driectory:即表示运行时的路径,相当于把war包上传到这里了,这个很重要,跟上面构建后操作的Remote Directory是会合并到一起的,比如我上面构建后操作中配置的RemoteDirectory是/home/rhel7/Jenkins-in/tmp,然后这边远程服务器的Remote Directory配置的是/,那么war包传输过去路径是/home/rhel7/Jenkins-in/tmp目录。

    exec commad:要运行的命令

    配置Exec command: 

      cd /home/rhel7/Jenkins-in/
      echo "Execute shell Start"
      sh stop.sh
      sh replace.sh
      echo "Execute shell Finish"
      chmod 777 /home/rhel7/Jenkins-in/startup.sh
      BUILD_ID=dontKillMe nohup /home/rhel7/Jenkins-in/startup.sh &

     三个脚本为:

        1. stop.sh

    # stop.sh
    #!/bin/bash
    JARFILE=jenkins-demo-0.0.1-SNAPSHOT.jar
     
    cd /home/rhel7/Jenkins-in
    echo "Stopping SpringBoot Application"
    ls
     
    pid=`ps -ef | grep $JARFILE | grep -v grep | awk '{print $2}'`
    if [ -n "$pid" ];then
      echo "kill -9 的 pid:"$pid
      kill -9 $pid
    fi
    echo "清除进程已完成"   

    2.replace.sh

    #!/bin/bash
    # 打包好的项目名称
    JARFILE=jenkins-demo-0.0.1-SNAPSHOT.jar # 编译好的 jar存放地址 file_path=/home/rhel7/Jenkins-in/tmp # 将现有的 jar 备份后,将新的 jar 替换 file=/home/rhel7/Jenkins-in/jenkins-demo-0.0.1-SNAPSHOT.jar if [ -f "$file" ];then mv /home/rhel7/Jenkins-in/jenkins-demo-0.0.1-SNAPSHOT.jar /home/rhel7/Jenkins-in/backup/jenkins-demo-0.0.1-SNAPSHOT.jar.`date +%Y%m%d%H%M%S` fi cp $file_path/jenkins-demo-0.0.1-SNAPSHOT.jar /home/rhel7/Jenkins-in/ # 删除老旧的备份项目 cd /home/rhel7/Jenkins-in/backup ls -lt | awk 'NR>5{print $NF}' | xargs rm -rf

    3.startup.sh

    #!bin/bash
    export JAVA_HOME=/usr/java/jdk1.8.0_171-amd64
    echo ${JAVA_HOME}
    echo "授权当前用户"
    chmod 777 /home/rhel7/Jenkins-in/jenkins-demo-0.0.1-SNAPSHOT.jar
    echo "执行...."
    nohup ${JAVA_HOME}/bin/java -jar /home/rhel7/Jenkins-in/jenkins-demo-0.0.1-SNAPSHOT.jar > /dev/null &
    echo "启动成功"
  • 相关阅读:
    Selenium3+python3自动化(十六)--单选框和复选框(radiobox、checkbox)
    Selenium3+python3自动化(十五)--JS处理滚动条,window.scrollTo(xpos,ypos)
    Selenium3+python3自动化(十四)--alertsconfirmprompt
    Selenium3+python3自动化(十三)--select下拉框
    Selenium3+python3自动化(十二)--iframe
    UPC-5627 Boxes(思维)
    UPC-5007 High Score(计算)
    UPC-5003 Dunglish(模拟)
    Hrbust-1830 第一个重复出现的数(线段树区间最值查询)
    UPC-5599 Minimum Sum(线段树求区间最小值+二分区间计数)
  • 原文地址:https://www.cnblogs.com/maybesuch/p/9083818.html
Copyright © 2011-2022 走看看