IDEA 插件 Alibaba Cloud Toolkit,一键部署前后端项目

文章目录

  • Alibaba Cloud Toolkit
    • 下载 IDEA 插件
    • 配置云端服务器
    • sh 脚本文件
      • 后端项目部署脚本
        • spring-boot.sh
      • 前端项目部署脚本
        • vue-app.sh

Alibaba Cloud Toolkit

Alibaba Cloud Toolkit,顾名思义,这是一个由阿里开发的,用于快速部署云服务项目的 IDEA 插件工具。
使用该插件,可以在本地直接一键部署项目到云端服务器。

下载 IDEA 插件

File -> Settings -> Plugins

在插件的搜索栏输入 Alibaba Cloud Toolkit,下载、安装、重启 IDEA 即可。
IDEA 插件 Alibaba Cloud Toolkit,一键部署前后端项目_第1张图片

配置云端服务器

这里的云端服务器,可以是真正的云端服务器,比如阿里云服务器,腾讯云服务器等等,也可以是自己本地上的虚拟机服务器。

在 IDEA 的侧边或者底部的标签上可以找到一个 Alibaba Cloud View 的标签,打开该标签即可。

IDEA 插件 Alibaba Cloud Toolkit,一键部署前后端项目_第2张图片

在该标签栏中点击右上角的 Add Host 按钮,按照自己的配置信息进行配置即可。

IDEA 插件 Alibaba Cloud Toolkit,一键部署前后端项目_第3张图片
配置完主机信息,就会在标签页面形成一条主机记录,点击记录的 Upload 按钮,配置上传文件的属性。

IDEA 插件 Alibaba Cloud Toolkit,一键部署前后端项目_第4张图片

IDEA 插件 Alibaba Cloud Toolkit,一键部署前后端项目_第5张图片
在后续的开发过程中,只要更新了新的 jar 包之后,直接使用 Upload 按钮,即可直接一键部署项目到云端服务器。
前端项目也是同样的步骤和原理。

到此为止,使用 Alibaba Cloud Toolkit 插件工具来一键部署项目就完成了,在文章末尾,附带前后端项目部署的 sh 脚本文件。

sh 脚本文件

后端项目部署脚本

spring-boot.sh
# 服务名称
SERVICE_NAME=zero-admin
# 项目路径
SERVICE_DIR=/usr/web-project/zero-admin
# 日志文件
LOG_FILE=${SERVICE_DIR}/log.log
# jar名称
JAR_NAME=zero-web-1\.0-SNAPSHOT\.jar
# 进程文件名称
PID_FILE=${SERVICE_NAME}\.pid

help(){
  echo "=== spring-boot shell help start ==="
  echo "start 启动服务"
  echo "stop 停止服务"
  echo "restart 重启服务"
  echo "===  spring-boot shell help end  ==="
}

start(){
  if [ ! -x ${JAR_NAME} ]
  then
    echo "=== ${JAR_NAME}添加可执行权限 ==="
    chmod +x ${JAR_NAME}
  fi
  nohup java -Dfile.encoding=UTF-8 -jar ${JAR_NAME} --spring.profiles.active=prod >${LOG_FILE} 2>&1 &
  echo $! > ${SERVICE_DIR}/${PID_FILE}
	echo "=== 服务${SERVICE_NAME}已启动 ==="
}

stop(){
  P_ID=$(cat ${SERVICE_DIR}/${PID_FILE})
  if [ "${P_ID}" == "" ]
  then
    echo "=== 服务${SERVICE_NAME}不存在或者已停止 ==="
  else
    kill "${P_ID}"
    rm -rf ${SERVICE_DIR}/${PID_FILE}
    echo "=== 服务${SERVICE_NAME}已停止 ==="
  fi
}

restart(){
  stop
  sleep 2
  start
  echo "=== 服务${SERVICE_NAME}已重启 ==="
}

cd ${SERVICE_DIR}

case ${1} in
    "")
      echo "=== 参数错误 ==="
        ;;
    help)
      help
        ;;
    start)
      start
        ;;
    stop)
     	stop
        ;;
    restart)
      restart
        ;;
    *)
      help
        ;;
esac

exit 0

前端项目部署脚本

vue-app.sh
# VueApp的项目目录
VUE_APP_DIR=/usr/web-project/zero-admin/dist
# Docker 停止 nginx 服务
docker stop nginx
sleep 2
docker cp ${VUE_APP_DIR} nginx:${VIE_APP_DIR}
docker start nginx
exit 0

你可能感兴趣的:(工具,linux,java,nginx,运维,docker)