zoukankan      html  css  js  c++  java
  • Jenkins部署web项目到Tomcat(shell脚本)

    一、首先配置Publish Over SSH插件

    配置地址:系统管理--》系统设置--》Publish over SSH(需要安装Publish over SSH插件)

    二、jenkins项目配置

       项目的基本配置都一样,就是在Post Steps中配置SSH

      在Post Steps选择如下如所示:

     

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

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

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

    exec commad:要运行的命令

    Exec command:

    cd /home/rhel7/tomcat/apache-tomcat-8091/bin
    chmod 777 deploy.sh
    ./deploy.sh

    deploy.sh脚本

    #!/bin/bash
    # defined 
    TOMCAT_HOME=/home/rhel7/tomcat/apache-tomcat-8091/
    file=$TOMCAT_HOME/webapps/jenkins-tomcat.war ID=`ps -ef | grep java | grep $TOMCAT_HOME|awk '{print $2}'` echo $ID echo "kill tomcat" kill -9 $ID echo "remover war file"

    if [ -f "$file" ];then cp $file
    $TOMCAT_HOME/webapps/backup/jenkins-tomcat.war.`date +%Y%m%d%H%M%S`
    fi

    # 移除旧的项目
    cd $TOMCAT_HOME/webapps rm
    -rf jenkins-tomcat rm -rf jenkins-tomcat.war

    # 删除备份(删除大于三个) cd $TOMCAT_HOME
    /webapps/backup ls -lt | awk 'NR>3{print $NF}' | xargs rm -rf
    echo
    "copy war to webapp" cd /home/rhel7/tomcat/tmp cp jenkins-tomcat.war $TOMCAT_HOME/webapps echo "start tomcat" cd $TOMCAT_HOME/bin ./startup.sh

     

  • 相关阅读:
    cygwin配合NDK开发Android程序
    和菜鸟一起学c之函数指针
    和菜鸟一起学android4.0.3源码之SD卡U盘等自动挂载配置
    Android系统的开机画面显示过程分析
    android编译系统的makefile文件Android.mk写法
    Linux下makefile教程
    和菜鸟一起学linux之本地git中心仓库建立
    强人总结的Windows XP实用技巧45条(一)
    Webshell下自动挂马的ASP
    多进程Telnet的木马例子
  • 原文地址:https://www.cnblogs.com/maybesuch/p/9105568.html
Copyright © 2011-2022 走看看