部署流程
1.安装插件
IDEA -> Settings -> Plugins,搜索Alibaba Cloud Toolkit
插件进行安装。
如果在Marketplace搜索不到,到官网进行安装:https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit
2.配置阿里云AK与SK
插件装好后选择 Tools -> Alibaba Cloud -> Preferences 进行设置。
在阿里云官网获取个人的AccessKey,填入到Accounts中,可以使用RAM子用户
的AccessKey。
选择Apperances & Behavior -> System Settings,设置个人Region。
3.打开Alibaba Cloud View进行连接
打开Tools -> Alibaba Cloud View,根据自己的服务器类型进行连接。
如果服务器是ECS,则选择Alibaba Cloud ECS
;
如果服务器是轻量级服务器,则Host
进行连接。
这里选择Host
连接阿里云轻量级服务器。
选择Add Host
:
填写host、username以及password进行连接。一般host填写公网ip。
Test Connection
成功后,加入该Host。
4.本地打包
注:可以跳过这一步,直接使用插件中的Maven build
进行打包。
本地的SpringBoot项目调通后,使用spring-boot-maven-plugin
插件进行打包,其中pom.xml为:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!-- 项目中使用了热部署插件 -->
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
</project>
打开Terminal,输入mvn clean package
即可,最后导出的jar包
在 /target 目录下
5.部署服务器
右键项目,在选项中找到Alibaba Cloud
,选择Deploy To Host
。
如果没有本地打包出jar包,可以使用Maven Build
进行部署;
如果本地已经打包jar包则可以直接选择Upload File
;
点击加号添加Host,填写Traget Directory和After deploy就可以run了。
引用官方的参数说明:
- Deploy File:部署文件包含两种方式。
- Maven Build:如果当前工程采用 Maven 构建,可以使用 Cloud Toolkit 直接构建并部署。
- Upload File:如果当前工程并非采用 Maven 构建,或者本地已经存在打包好的部署文件,可以选择并直接上传本地的部署文件。
- Target Deploy ECS:在下拉列表中选择地域,然后在地域中选择要部署的 ECS 实例。
- Traget Directory :输入在 ECS 上部署路径,如 /root/act_springboot
- Commond / After deploy:输入应用启动命令,如 sh /root/act_springboot/restart.sh。表示在完成应用包的部署后,需要执行的命令 —— 对于 Spring Boot 程序而言,通常是一句 java -jar XXXX.jar 的启动命令。
在这里执行sh /home/root/springboot/restart.sh
,文件内容如下:
killall java
nohup java -jar /home/root/springboot/xxx.jar &
- killall java:结束当前所有java进行,防止重新部署的时候有其他进程占用着端口
- nohup java -jar /home/root/springboot/xxx.jar &:不挂断运行命令,终端关闭时jar也会一直运行
最后提醒一下,部署成功后要将服务器的Tomcat端口放行,阿里云安全组加上端口号,才能正常访问。
参考
官方:在 Intellij IDEA 中部署 Spring Boot / Spring Cloud 应用到阿里云
Alibaba Cloud Toolkit一键部署本地jar包到host服务器