mac电脑配置本地连接开发机器一键打包部署

mac电脑

安装homebrew(已安装请跳过)

复制代码
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装rsync同步工具

复制代码
brew install rsync

配置服务器免密

生成公/私钥(生成过的请跳过)

复制代码
ssh-keygen -t rsa -b 4096 -C "[email protected]"

执行公钥拷贝,命令执行后需要输入服务器密码

复制代码
ssh-copy-id -i /Users/zhuangyan/.ssh/deploy_zzy_rsa.pub username@remoteserver

验证免密是否成功

复制代码
ssh -i /Users/zhuangyan/.ssh/deploy_zzy_rsa username@remoteserver

maven打包配置

复制代码
<!-- 其他插件配置 -->
<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>exec-maven-plugin</artifactId>
  <version>3.0.0</version>
  <executions>
    <execution>
      <id>run-local-script</id>
      <phase>package</phase> <!-- 执行阶段,例如这里设置为 package -->
      <goals>
        <goal>exec</goal>
      </goals>
      <configuration>
        <executable>/Users/zhuangyan/project/java/myserver/service/deploy/pom_package_deploy_and_restart.sh</executable>
        <!-- 设置您的本地脚本路径 -->
      </configuration>
    </execution>
  </executions>
</plugin>

同步脚本pom_package_deploy_and_restart.sh

复制代码
#!/bin/bash

rsa_file=/Users/zhuangyan/.ssh/deploy_zzy_rsa
server_ip=10.10.10.142
server_user=mbs
deploy_from_file_one=/Users/zhuangyan/project/java/uusafe-mbs-ios/uusafe-mbs-ios-service/target/mytest/classes/
deploy_from_file_two=/Users/zhuangyan/project/java/uusafe-mbs-ios/uusafe-mbs-ios-service/target/mytest/lib/
deploy_to_file_one=/home/mbs/emm/ios-service/classes
deploy_to_file_two=/home/mbs/emm/ios-service/lib

echo "-----------------编译完成-----------------"
echo "----------------安装包解压----------------"
mkdir target/mytest/
tar -xf target/ios-service-dist.tar.gz -C target/mytest/
echo "-----------------开始同步-----------------"

rsync -avz -e "ssh -i ${rsa_file}" ${deploy_from_file_one} ${server_user}@${server_ip}:${deploy_to_file_one}
rsync -avz -e "ssh -i ${rsa_file}" ${deploy_from_file_two} ${server_user}@${server_ip}:${deploy_to_file_two}
echo "-----------------同步完成-----------------"

echo "-----------------重启服务-----------------"
ssh -i ${rsa_file} mbs@${server_ip} '/home/mbs/emm/emm.sh restart ios'
echo "-----------------重启完成-----------------"
相关推荐
保利九里2 分钟前
java中的包机制
java·开发语言
努力学习的明7 分钟前
Spring MVC 中请求处理流程及核心组件解析
java·spring·mvc
橘子海全栈攻城狮17 分钟前
【源码+文档+调试讲解】党员之家服务系统小程序1
java·开发语言·spring boot·后端·小程序·旅游
冼紫菜26 分钟前
Java开发中使用 RabbitMQ 入门到进阶详解(含注解方式、JSON配置)
java·spring boot·后端·rabbitmq·springcloud
Kakikori27 分钟前
JSP链接MySQL8.0(Eclipse+Tomcat9.0+MySQL8.0)
java·开发语言
Dr.92738 分钟前
1-10 目录树
java·数据结构·算法
冬日枝丫1 小时前
【spring】spring学习系列之六:spring的启动流程(下)
java·学习·spring
圈圈编码1 小时前
LeetCode Hot100刷题——轮转数组
java·算法·leetcode·职场和发展
〆、风神1 小时前
面试真题 - 高并发场景下Nginx如何优化
java·nginx·面试
應呈1 小时前
FreeRTOS的学习记录(任务创建,任务挂起)
java·linux·学习