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 "-----------------重启完成-----------------"
相关推荐
yaoxin521123几秒前
276. Java Stream API - 使用 flatMap 和 mapMulti 清理数据并转换类型
java·开发语言·windows
Vic101014 分钟前
【无标题】
java·数据库·分布式
摇滚侠7 分钟前
Java 零基础全套视频教程,异常,处理异常,自定义异常,笔记 124-129
java·笔记
伯明翰java20 分钟前
【无标题】springboot项目yml中使用中文注释报错的解决方法
java·spring boot·后端
企微自动化24 分钟前
企业微信二次开发:深度解析外部群主动推送的实现路径
java·开发语言·企业微信
_修铁路的24 分钟前
【Poi-tl】 Word模板填充导出
java·word·poi-tl
武子康27 分钟前
Java-216 RocketMQ 4.5.1 在 JDK9+ 从0到1全流程启动踩坑全解:脚本兼容修复(GC 参数/CLASSPATH/ext.dirs)
java·大数据·分布式·消息队列·系统架构·rocketmq·java-rocketmq
austin流川枫27 分钟前
🔥MySQL的大表优化方案 (实战分享)
java·mysql·性能优化
张飞签名上架29 分钟前
深耕全球市场:App上架iOS与Google Play全流程指南
macos·ios·cocoa·ios上架·上架·谷歌上架
码界奇点30 分钟前
基于Spring Boot和Vue.js的视频点播管理系统设计与实现
java·vue.js·spring boot·后端·spring·毕业设计·源代码管理