0


基于Jenkins自动化部署的springboot+vue前端后分离项目


一、前端部署

1.环境配置

安装nginx

Nginx是一个很强大的高性能Web和反向代理服务,也是一种轻量级的Web服务器,可以作为独立的服务器部署网站,应用非常广泛,特别是现在前后端分离的情况下。而在开发过程中,我们常常需要在window系统下使用Nginx作为Web服务器。

(1)去官网nginx news ,点击download

在下载界面选择自己想要下载的版本,点击对应版本,下载Nginx。

  • Nginx的压缩包下载完成,解压,然后点击niginx.exe即可完成安装(2)配置nginx.conf文件 在nginx-1.27.0\conf 路径下 ,打开nginx
  • 把root后面内容改为 html/dist 。

安装Jenkins插件

1、安装完推荐的插件,我们还需要额外的插件来满足使用,需要单独下载插件,下载安装即可

NodeJs:前端项目打包的基本环境

2.全局工具配置

根据项目选择对应Node版本

3.构建配置

选择自由风格项目并输入一个Jobs任务名称

配置项目源码管理

构建环境配置,选择ProvideNode&npmbin/foldertoPATH。一般来说默认配置即可

添加构建步骤,选择Execute Windows batch command

添加命令

cd .\exploit\forum-jwt\my-project-frontend (切换到前端项目路径)
npm install (安装项目所需依赖包)

添加命令

cd .\exploit\forum-jwt\my-project-frontend (切换到前端项目路径)

npm run build (打包命令,打包成dist文件)

xcopy /E /Y C:\Users\28916.jenkins\workspace\build-frontend\exploit\forum-jwt\my-project-frontend\dist\ C:\nginx-1.27.0\html\dist\

(将Jenkins 打包最新的dist文件夹复制到Nginx服务器的html文件夹中)

cd C:\nginx-1.27.0 (切换到Nginx目录下)

nginx -s reload (重启nginx服务)

二、后端部署

1.全局配置

为了解决jenkins构建结束后终止所有它启动进程的问题

我们可以为jenkins添加一个全局变量****BUILD_ID,值为allow_to_run_as_daemon

2.构建配置

创建自由风格的Jobs任务

拉取项目

添加构建步骤,选择Execute Windows batch command

构建之前终止应用程序

FOR /F "tokens=5" %%P IN ('netstat -ano ^| findstr :8080') DO taskkill /F /PID %%P || exit 0

FOR /F "tokens=5" %%P IN ('netstat -ano ^| findstr :8080')

这个命令使用了FOR循环和netstat命令,通过管道符将netstat的输出传递给findstr命令,找到在本地8080端口上监听的进程ID。

DOtaskkill /F /PID %%P

这个命令使用了DO关键字,执行taskkill命令,并强制结束找到的进程ID。

|| exit 0

这个命令是一个错误处理语句,如果上一个命令执行失败,则退出程序,否则返回0表示执行成功。

总之,该命令的作用是强制结束在本地8080端口上监听的进程
注:需要把该命令放在Execute Windows batch command的最上方,首先执行

打包项目

cd .\exploit\forum-jwt\my-project-backend (切换到后端项目的pom.xml文件路径下)

mvn clean package (清理并打出jar包)

运行jar程序

cd .\exploit\forum-jwt\my-project-backend\target

start /B cmd /c "java -jar my-project-backend-0.0.1-SNAPSHOT.jar --server.port=8080 "

start

启动一个新的命令行窗口,以异步方式运行下面的命令。

/B

以后台模式运行新命令行窗口,即不在当前命令行窗口输出新窗口的信息。

cmd

运行cmd.exe(Windows命令行解释器)。

/c

运行完命令后关闭命令行窗口。

"java -jar my-project-backend--0.0.1-SNAPSHOT.jar --server.port=8080"

要在新命令行窗口


本文转载自: https://blog.csdn.net/peninsula7520/article/details/139933812
版权归原作者 peninsula7520 所有, 如有侵权,请联系我们删除。

“基于Jenkins自动化部署的springboot+vue前端后分离项目”的评论:

还没有评论