一键发布tomcat或者springboot项目,解放自己的双手,干点什么他不香吗

时间

2020年12月2日

前提

做java开发的程序员,都绕不开开发、编译、打包、上传,然后启动服务的一系列固定的操作。开发的时候时不时要修改一下代码然后部署到测试服务器上去,虽然事情不多,然后确实让人很繁琐。

解决办法

服务器上,我们可以写一些脚本去自动停止启动tomcat或者SpringBoot项目,并且服务器又可以设置通过设置验证秘钥去登陆或者执行脚本命令,于是我们便可以吧这些命令组合起来去实现我们在idea中的一键发布到服务器中去。

服务器端的工作

  1. 创建启动命令

    • tomcat

      这个启动命令不用处理,自带的/bin/startup.sh

    • springboot

      1. 创建start.sh文件
      2. nohup java -jar xxx.jar & 其他具体的启动参数可自行设置
      3. 给文件添加可执行权限chmod u+x start.sh
  2. 通用停止命令

    创建shop.sh,内容如下,tomcat_sit替换成自己的包名,最后删除的命令可根据自己的包,进行修改

    pid=`ps -ef | grep tomcat_sit | grep -v grep | awk '{print $2}'`
    if [ -n "$pid" ]
    then
       kill -9 $pid
    fi ;
    rm -rf manage*
    
  3. 创建服务器连接私钥

    可参考

    https://www.cnblogs.com/powpoia/p/8953106.html

  4. 创建好连接服务器私钥之后可利用秘钥测试一下登陆,后面需要用到该命令

    ssh -i id_rsa.pem root@39.97.103.5
    在这里插入图片描述

idea工作

  1. 创建执行命令publish.sh命令

  2. 安装可执行sh的插件

    https://blog.csdn.net/u012443641/article/details/81295999

  3. 写入自己的脚本命令

    • 项目打包
      mvn clean package
      
    • 执行停止服务命令
      ssh -i C:/key/child_test.pem root@192.168.23.86  'bash /home/tomcat_sit/webapps/stop.sh'
      
    • 执行上传包的命令
      scp -i C:/key/child_test.pem  E:/project/qzpd_svn/qzpd_api/target/manage.war root@192.168.23.86:/home/tomcat_sit/webapps
      
    • 执行启动命令
      ssh -i C:/key/child_test.pem root@192.168.23.86  'cd /home/tomcat_sit/bin && bash startup.sh'
      
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值