参考文档
https://cloud.tencent.com/developer/article/1458723https://blog.csdn.net/qq_38288606/article/details/120699470
腾讯云插件
https://cloud.tencent.com/document/product/649/51454
腾讯的好像要买对应的TSF才行,不推荐
之前部署的时候,都是用maven打包package然后复制到服务器上,再跑个nohup的脚本 现在我找到了一个将Java程序一键部署到云服务器的的idea插件。
正文开始
安装插件
安装插件后有2个地方可以看到
上图选项说明(摘抄自 https://cloud.tencent.com/developer/article/1458723)
- Deploy to Host:部署到任意服务器。这一个功能决定了 Cloud Toolkit 强大的之处就是可以使得每个开发者受益,它其实并不是和阿里云厂商强绑定的。。
- Deploy to ECS:这里的 ECS 指的阿里云的 ECS,如果你的服务部署在阿里云 ECS 上,可以选择使用这个功能,获得比 Deploy to Host 更加丰富的功能。在下文我也会简单测评下这个功能。
- Deploy to EDAS & EDAS Serverless:EDAS & EDAS Serverless 是阿里云提供的分布式服务治理服务,可以理解为商业版的 Dubbo,具有强大的服务治理、服务调度能力,Cloud Toolkit 对 EDAS 做了个性化的部署支持,让使用者无需登录控制台,在 IDEA 中即可完成 EDAS 的部署。
- Deploy to CS K8s:在云原生时代,很多应用使用容器化的方式进行部署,Cloud Toolkit 这一点做的还是不错的,已经具备了容器化部署的能力,具有一定的前瞻性。
这里,我选择 Deploy to Host
底部出现栏,进行添加远程地址
添加后,这里有对应功能按钮
配置本地jar包路径
配置放到线上服务器的路径
配置放好后的启动脚本
查看效果
确认无误后,配置一键发布
配置对应内容
配置实时日志
查看效果
另附:启动脚本
#!/bin/bash
echo "************ 查找进程 **************"
pid=`ps -ef | grep "PicHub.jar" | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]; then
echo $pid Manager
kill -9 $pid
if [ "$?" -eq 0 ]; then
echo "kill success"
else
echo "kill failed"
fi
echo "************ 杀掉进程 **************"
fi
mv /data/work/java/pichub/bak/PicHub.jar /data/work/java/pichub/PicHub.jar
nohup java -jar /data/work/java/pichub/PicHub.jar >>/data/work/java/pichub/log.out & 2>&1 &
echo "************ 启动成功 **************"
exit 0