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 "-----------------重启完成-----------------"
相关推荐
未若君雅裁1 小时前
MyBatis 一级缓存、二级缓存与清理机制
java·缓存·mybatis
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
阿维的博客日记2 小时前
Nacos 为什么能让配置动态生效?(涉及 @RefreshScope 注解)
java·spring
雨辰AI2 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务
辰海Coding3 小时前
MiniSpring框架学习-完成的 IoC 容器
java·spring boot·学习·架构
小小编程路3 小时前
C++ 多线程与并发
java·jvm·c++
AI视觉网奇3 小时前
linux 检索库 判断库是否支持
java·linux·服务器
她的男孩4 小时前
从零搭一个企业后台,为什么我把能力拆成 Starter 和 Plugin
java·后端·架构
RainCity4 小时前
Java Swing 自定义组件库分享(七)
java·笔记·后端
Sam_Deep_Thinking4 小时前
连锁门店的外卖订单平台对接
java·微服务·架构·系统架构