什么是Cloud Toolkit
Cloud Toolkit 是免费的本地 IDE 插件,帮助开发者更高效地开发、测试、诊断并部署应用。通过插件,可以将本地应用一键部署到任意服务器,甚至云端(ECS、EDAS、ACK、ACR 和 小程序云 等);并且还内置了 Arthas 诊断、Dubbo工具、Terminal 终端、文件上传、函数计算 和 MySQL 执行器等工具。
首先在父工程的pom添加
/Users/kaifa/Documents/lxh/xxx-new/jar是你的jar打包后存放的地址
true
/Users/kaifa/Documents/lxh/xxx-new/jar
子模块pom加入 这样就可以把当前子模块 执行package的时候把jar打入到指定目录 如果执行的install请把
maven-antrun-plugin
copy
package
run
开始使用Cloud Toolkit打包 在 Intellij IDEA 中部署 Spring Boot / Spring Cloud 应用到阿里云这里使用的是IDEA2019 首先在安装Alibaba Cloud Toolkit插件
安装教程https://yq.aliyun.com/articles/674021?spm=5176.11997469.1283546..7a8f2fa8U2VOhA&aly_as=FgAcVHLg
1、选择Tools -> Alibaba Cloud View -> Host 如图
2、点击add host 填入的服务器名称 用户名 密码 测试一下连接然后点击add
upload是上传文件用的 Termianl是对应你服务器的命令控制台 command 是输入命令的地方
More里面是一些删除当前连接还有编辑等一些操作 如图
3、点击 Edit Confugurations... -> 点+号添加Deploy to Host 如图
4、选择一个你的服务器 Target Directory 打包存放的jar地址
After deplay填上你打包后执行的脚本 (脚本在最后面哦)
多模块需要在before launch 添加子模块 clean package操作 如图
多模块打包 https://yq.aliyun.com/articles/676151
5、切换upload file 点browse添加你要上传的jar
6、切换到advanced 填入你打包前执行的脚本(脚本在最后面哦) 点击apply -> ok
7、点击run执行 然后查看日志 等待执行完成 先执行eureka 再执行config 执行启动之后才执行其它服务的命令 如图
before.sh脚本
#!/bin/bash
echo "before打包前执行"
source /etc/profile
ps -ef|grep xxxx-eureka|grep -v "grep"|awk '{print $2}'|xargs kill -9
ps -ef|grep xxxx-config|grep -v "grep"|awk '{print $2}'|xargs kill -9
ps -ef|grep xxxx-gateway|grep -v "grep"|awk '{print $2}'|xargs kill -9
ps -ef|grep xxxx-user|grep -v "grep"|awk '{print $2}'|xargs kill -9
ps -ef|grep xxxx-activity|grep -v "grep"|awk '{print $2}'|xargs kill -9
ps -ef|grep xxxx-search|grep -v "grep"|awk '{print $2}'|xargs kill -9
cd /usr/jarprod
rm -rf xxxx-*
echo "before执行结束"
after.sh脚本
source /etc/profile
nohup java -Xms128m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m -jar /usr/jarprod/xxx-eureka.jar > /dev/null 2>&1 &
RESULT=000
while [[ $RESULT != "200" ]]; do
RESULT=$(curl -I -m 10 -o /dev/null -s -w %{http_code} xxx-new:xxx-new@localhost:8761)
echo eureka $RESULT
sleep 5
done
nohup java -Xms128m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m -jar /usr/jarprod/xxx-config.jar --spring.profiles.active=native > /dev/null 2>&1 &
RESULT2=000
while [[ $RESULT2 != "200" ]]; do
RESULT2=$(curl -I -m 10 -o /dev/null -s -w %{http_code} localhost:8888/actuator/info)
echo config $RESULT2
sleep 5
done
echo gateway
nohup java -Xms128m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m -jar /usr/jarprod/xxx-gateway.jar --spring.profiles.active=test > /dev/null 2>&1 &
echo activity
nohup java -Xms128m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m -jar /usr/jarprod/xxx-activity.jar --spring.profiles.active=test > /dev/null 2>&1 &
echo user
nohup java -Xms128m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m -jar /usr/jarprod/xxx-user.jar --spring.profiles.active=test > /dev/null 2>&1 &
echo search
nohup java -Xms128m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m -jar /usr/jarprod/xxx-search.jar --spring.profiles.active=test > /dev/null 2>&1 &
exit
参考官方文档
官网地址 https://toolkit.aliyun.com
使用Cloud Toolkit打包 https://yq.aliyun.com/articles/665693
Cloud Toolkit 上传文件到远程服务器 https://yq.aliyun.com/articles/686715?spm=5176.11997469.1283546.20.7a8f2fa8U2VOhA&aly_as=cNz16eod
https://yq.aliyun.com/articles/680157?spm=5176.11997469.1283546.19.7a8f2fa8U2VOhA&aly_as=7Nu5SVxF