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 "启动成功"
  • 相关阅读:
    easy ui 表单ajax和from两种提交数据方法
    easy ui 下拉级联效果 ,下拉框绑定数据select控件
    easy ui 下拉框绑定数据select控件
    easy ui 异步上传文件,跨域
    easy ui 菜单和按钮(Menu and Button)
    HTTP 错误 404.3
    EXTJS4.2 后台管理菜单栏
    HTML 背景图片自适应
    easy ui 表单元素input控件后面加说明(红色)
    EXTJS 4.2 添加滚动条
  • 原文地址:https://www.cnblogs.com/maybesuch/p/9083818.html
Copyright © 2011-2022 走看看