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 "zhuangyan@163.com"

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

复制代码
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 "-----------------重启完成-----------------"
相关推荐
2301_803554522 小时前
c++中类的前置声明
java·开发语言·c++
不想写bug呀5 小时前
多线程案例——单例模式
java·开发语言·单例模式
心平愈三千疾5 小时前
通俗理解JVM细节-面试篇
java·jvm·数据库·面试
我不会写代码njdjnssj5 小时前
网络编程 TCP UDP
java·开发语言·jvm
第1缕阳光5 小时前
Java垃圾回收机制和三色标记算法
java·jvm
funnyZpC6 小时前
好用的文档工具👉smart-doc
java
一只叫煤球的猫6 小时前
🔥 同事混用@Transactional和TransactionTemplate被我怼了,三种事务管理到底怎么选?
java·spring boot·后端
华子w9089258599 天前
基于 SpringBoot+JSP 的医疗预约与诊断系统设计与实现
java·spring boot·后端
feifeigo1239 天前
Java 正则表达式高级用法
java·mysql·正则表达式
empti_9 天前
Java中的List实现类详解
java