Alibaba Cloud Toolkit的使用

今天翻朋友圈看到一篇文章介绍阿里巴巴的官方IDE插件----Cloud Toolkit,看了一下,感觉很牛逼,花了两个小时亲测,果然很好用。

官方的介绍为:  Cloud Toolkit 是本地 IDE 插件,帮助开发者更高效地开发、测试、诊断并部署应用。通过插件,可以将本地应用一键部署到任意服务器,甚至云端(ECS、EDAS、Kubernetes 和 小程序云 等);并且还内置了 Arthas 诊断、Dubbo工具、Terminal 终端、文件上传和 MySQL 执行器等工具。

以下为测试过程。

        开发工具: idea (2018.1.1以上版本)

        JDK: 1.8以上版本

        部署方式: Maven构建(暂时不支持Gradle)

1、基于Spring Boot快速构建一个Web,项目结构如下:

2、安装Alibaba Cloud Toolkit插件

        这一步参考官方文档: https://help.aliyun.com/document_detail/98762.html

3、安装好之后开始配置服务器相关参数

红色框里面的菜单对应的功能如下:

我测试的就是部署到任意服务器,即Deploy to Host,如下,先配置服务器,

点击右上角的Add Host,弹出如下框,填上服务器相关参数,保存即可.

4、配置项目所在服务器的路径以及一些需要执行的脚本.

如下是项目相关文件,demo-0.0.1.jar是jar包,restart.sh是重启服务的脚本,start.sh是启动服务的脚本, shutdown.sh是停止服务的脚本,nohup.out是日志输出文件

如上操作,部署项目到服务器上,会弹出下框,进行相关的配置:

下面配置jar包以及执行脚本的路径需为绝对路径

以上配置的Command为:

sh /opt/test-cloud-toolkit/restart.sh demo-0.0.1.jar

解释为: 项目部署后执行restart.sh脚本,这个脚本的作用是重启服务。后面的demo-0.0.1.jar是一个参数传入脚本文件中。

restart.sh脚本内容如下:

#!/bin/sh
#服务名
if [ ! -n "$1" ] ;then
	echo "please input a process name!"
	exit
else
	process_name=$1
	echo "process name is $process_name!"
	PID=$(ps -ef | grep $process_name | grep -v "$0" | grep -v "grep" | awk '{print $2}')
	if [[ -z $PID ]]; then
		nohup java -jar ./$process_name &
		if [ $? -eq 0 ];then
			echo "start $process_name success"
			tail -f nohup.out
			exit
		else
			echo "start $process_name fail"
		fi
	else
		echo "$process_name process id:$PID"
	fi
	kill $PID
	if [ $? -eq 0 ];then
		echo "kill $process_name success"
		sleep 5
		nohup java -jar ./$process_name &
		if [ $? -eq 0 ];then
			echo "start $process_name success"
		else
			echo "start $process_name fail"
		fi
	else
		echo "kill $process_name fail"
	fi
fi
tail -f nohup.out

以上配置好以后,点击如下按钮即可启动部署

执行结果:

这样即部署成功!浏览器请求一下:

可见部署成功!

我们可以修改一下名称,避免同一项目需要多处部署以免混淆:

修改完后如下:

然后再次部署时只需要点击绿色三角按钮即可!

将sayHello方法的输出修改一下,再次测试:

访问浏览器:

到此结束!

自动部署之前项目使用过jenkins,这次简单测试后,感觉Cloud Toolkit相比jenkins有如下优点:

1、配置简单,不用单独安装jenkins(占磁盘空间)

2、修改代码后不需要上传到git就可以实现本地打包部署,而jenkins必须是代码上传到git仓库后才可以被打包到

Alibaba Cloud Toolkit(后文简称 Cloud Toolkit)可以帮助开发者更高效地部署、测试、开发和诊断应用。Cloud Toolkit与主流IDE及阿里云其他产品无缝集成,帮助您大大简化应用部署到服务器,尤其是阿里云服务器中的操作。您还可以通过其内嵌的Arthas程序诊断、Terminal Shell终端和MySQL执行器等工具,简化应用开发、测试和诊断的过程。 产品功能 部署应用 部署应用到ECS:完成编码后,利用Cloud Toolkit快速将应用部署至ECS指定目录。 部署应用到EDAS:将本地代码和云端应用进行关联后,可以实现自动化的部署部署应用到Kubernetes:将本地代码和云端容器进行关联后,可以实现自动化的镜像上传和部署部署应用到远程服务器:支持SSH标准协议,可以将应用部署到任意机器。 内置终端Terminal:在本地IDE内,开发者可以直接通过内置的终端Terminal,快速登录所有支持标准SSH协议的机器。 文件上传:在本地IDE内,开发者可以一键将本地文件或者远程URL上传到服务器指定目录。 内置数据库SQL Console:在本地IDE内,开发者可以浏览阿里云的RDS资源。若已配置用户名和密码,可通过内置的SQL Console连接上RDS实例,并快速执行SQL语句。 Arthas诊断:在本地IDE中即可使用Arthas来实现远程诊断。 创建Dubbo应用:在本地IDE中快速创建Dubbo应用。 SSH代理功能:可使用Cloud Toolkit支持SSH代理的功能,通过添加代理机、添加部署机器和设置代理等操作,快速打通网络环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值