• linux下使用shell脚本自动化部署项目


    在Java开发项目时经常要把正在开发的项目发布到测试服务器中去测试,一般的话是要把项目先打成war包,然后把war包发布到服务器中,关闭服务器, 最后重新启动服务器,虽然这过程不是很繁琐,但如果是多个工程都要发布的时候,发布的过程就会比较繁琐,所以福音来了……

    通过 编写shell 脚本来完成这些操作,只要执行一个shell脚本,项目就可以自动发布到服务器了,用起来还是比较方便的。

    第一步:在linux中安装svn。(这个可以参照另外一篇博客:http://simplelife.blog.51cto.com/9954761/1729931 ),具体到这篇博客,安装svn是为了可是使用svn中的一些命令。

    第二步:在linux安装maven。(参照:http://simplelife.blog.51cto.com/9954761/1743977 )

    第三步:在linux中的任意一个目录下,最好自己新建一个目录,如ucenter目录

    1
    2
    3
    4
    5
    mkdir /home/softs/ucenter
    cd ucenter
    svn co   http://svnserver/mypro/trunk   ./    #从指定的svn地址中检出代码到当前目录
      
    此时需要输入一些svn的用户名和密码,输入之后确定使用就是了。

    wKiom1bKxzfzkjwPAAAcUxNv07c652.png

    执行:svn co http://svnserver/mypro/trunk/ ./

    wKiom1bKx72jQnPjAAAvfnJA-q0440.png

    此时svn中的代码就已经检出到服务器中了……

    在当前目录下执行:svn up 

    可以更新svn中最新的代码,返回svn的版本

    wKiom1bKyOLx4sgUAAAJaRwXX0M206.png

    进入ssm-parent目录中,执行命令(maven的命令):mvn -U clean install

    wKioL1bKyZeBDF-yAABoS0Ew_M0662.png

    进入simple-ssm中执行相同的操作:

        wKiom1bKyZnBXcAaAAApq8dXAmo219.png

    wKioL1bKyijC34t7AABbNe9te9o456.png

    wKiom1bKye_gY72WAAApz5gd29c309.png

    此时simple-ssm中就多了一个目录:target,这个工程的war包就在其中

        wKioL1bKywyB_boAAABhm20_rEQ363.png

    此时项目war包已经生成了,接下来就可以将这个war复制到tomcat服务器中,然后重启服务器就可以了。

    也就是最前面所说的,上述这些更新代码、打包,移动war包到服务器,重启服务器的操作都可以用一个简单的shell脚本来执行。

    ++++++++++++++++++++++++++++编写发布要执行的shell脚本++++++++++++++++++++++++++++++++

    在ucenter目录中(随便哪个目录,以这个目录为例)

    新建ssm-parent.sh文件:

    1
    2
    touch ssm-parent.sh
    vim ssm-parent.sh

    编写:

    wKioL1bLwX7Rs93lAAAQ2gcYceM349.png

    保存后退出。

    给文件赋予权限

    1
    chmod 755 ssm-parent.sh

    执行:

    1
    ./ssm-parent.sh

    新建simple-ssm.sh文件:

    touch simple-ssm.sh

    vim simple-ssm.sh

    编写:

    wKiom1bLwc7CwQ_nAAA236o9ZPc140.png

    保存后退出。

    给文件赋予权限

    1
    chmod 755 simple-ssm.sh

    执行:

    1
    ./simple-ssm.sh

    这样就将simple-ssm工程发布完成了。

    以后每次只要将代码写完之后,提交到svn中,在服务器中就可以先后执行这两个shell脚本(当然还可以有别的工程的shell脚本),就可以轻松的发布项目了,是不是很便捷!

    执行:

    1
    2
    ./ssm-parent.sh
    ./simple-ssm.sh

    到此项目时时发布就可以实现了。

  • 相关阅读:
    window上安装zabbix agent使用案例
    zabbix通过shell脚本安装异常问题定位
    linux脚本实现scp命令自动输入密码和yes/no等确认信息
    需求:lr需要在一串数字中随机位置插入一个新数字的实现方式
    python写csv文件
    python产生随机名字
    python生成随机日期字符串
    centos6.5上安装redis3.2.1遇见的坑
    python辅助sql手工注入猜解数据库案例分析
    XXE (XML External Entity Injection) 外部实体注入漏洞案例分析
  • 原文地址:https://www.cnblogs.com/baizhanshi/p/6874836.html
Copyright © 2020-2023  润新知