jekenis+maven(nodejs)+svn自动化部署(前后端)

本文介绍了如何配置和使用Maven与Jenkins进行项目自动化部署。首先详细阐述了Maven的安装步骤,包括下载、解压、配置环境变量及验证。接着,讲解了Jenkins的安装和初始化过程,特别是设置Jenkins管理员密码和安装推荐插件。然后,重点讨论了如何在Jenkins中配置项目,包括创建构建任务、配置源码管理、构建命令和自动化脚本,确保能自动打包并部署到目标目录。最后,提到了源码检出路径和解决启动脚本权限问题的方法,实现了一套完整的自动化部署流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、安装maven环境

下载maven

https://dlcdn.apache.org/maven/maven-3/3.8.4/binaries/apache-maven-3.8.4-bin.tar.gz

解压

tar -zxvf apache-maven-3.8.4-bin.tar.gz

配置环境变量

vim /etc/profile

在文件结尾添加

export MAVEN_HOME=/apps/apache-maven-3.8.4
export PATH=$MAVEN_HOME/bin:$PATH

使修改的配置生效

source /etc/profile

测试:

mvn -v

显示maven版本信息,maven安装成功

修改settings.xml (settings.xml里面的仓库地址记得修改成linux下仓库目录)

maven仓库目录

/apps/mavenRepositories

2、jenkins配置

2.0、为什么要使用jenkins

自动完成打包发布,减少重复的操作过程以节省时间和工作量。

比如我在今天打包给运维的时候,就不小心带了本地虚拟机的nacos服务器地址,使用jenkins每次部署的配置和代码来自版本库,可以避免本地改动造成的污染。

2.1、安装jenkins

使用war包安装,官网下载jenkins.war

执行

java -jar jenkins.war --httpPort=3344

启动成功,war包方式安装的jenkins插件目录为:

/root/.jenkins/plugins

2.2、初始化jenkins

2.2.1、 解锁Jenkins

在这里插入图片描述

服务器查看admin密码(首次启动)

cat /root/.jenkins/secrets/initialAdminPassword

2.2.2、安装推荐的插件

在这里插入图片描述
在这里插入图片描述

2.2.3、创建管理员用户

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X4hc1OaO-1644302916055)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220118141018726.png)]

2.3、全局工具配置

点击Manage Jenkins->Global Tool Configuration,进入全局工具配置页面

全局工具配置只需要配置JDK、Maven、NodeJs(前端项目需要)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、配置项目自动化部署

3.1、创建一个自动构建任务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e7IwKcxl-1644302916057)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220127185524183.png)]

3.2、如果是maven父工程(或前端)

输入名称,选择创建一个自由风格的项目
在这里插入图片描述

3.3、如果是一个微服务模块

输入名称,选择创建一个maven项目
在这里插入图片描述

3.4、jenkins配置svn

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3JBvrOit-1644302916058)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220118141303339.png)]

3.5、jenkins配置项目构建命令

后端项目配置maven构建命令

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7O5sJ7xR-1644302916058)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220118141340503.png)]

前端项目配置npm构建,选择jenkins中安装的nodejs插件,其他默认即可
在这里插入图片描述

3.6、配置自动化脚本

  • 第一行,Jenkins默认会在Build结束后Kill掉所有的衍生进程,会杀死我们的,不配置的话会杀死我们的后台启动进程

    /xxx/startupBase.sh: 行 67: 29902 已杀死               nohup java -jar $JAVA_OPTS $SPD_BASE > $SPD_BASE_LOG 2>&1
    
  • 第二行,打印当前所在路径,可删除

  • 第三行,将构建好的jar包移动到我们想要的目录下

  • 第四行,执行启动脚本

BUILD_ID=DONTKILLME
pwd
mv ./target/*.jar /xxx/
./bin/startup.sh restart

如:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Tac5gQgB-1644302916059)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220128131335792.png)]

如果是父工程,要重启所有模块

BUILD_ID=DONTKILLME
pwd
find . -path '*spd-modules*' -name *.jar -exec mv {} /xxx/ \;
find . -path '*spd-gateway*' -name *.jar -exec mv {} /xxx/ \;
./bin/startup.sh restart

如果是前端项目,使用shell命令拷贝到nginx目录下,由于Linux下默认cp命令是有别名(alias cp=‘cp -i’)的,无法强制覆盖,即使你用 -f 参数也无法强制覆盖文件,我们使用\cp来强制覆盖旧文件

pwd
npm install -registry=http://registry.npm.taobao.org --unsafe-perm
npm run build
\cp -rf dist/* /xx/nginx-1.10.2/html/

3.7、配置完成后,点击保存

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QpmqnPff-1644302916059)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220127190545144.png)]

3.8、在控制台点击构建按钮

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FKEkK2q0-1644302916060)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220127190500518.png)]

或者点击模块名进入项目构建页面,点击build now进行项目构建

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bjwuOj3N-1644302916060)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220127190938820.png)]

点击左下角当前正在进行的构建任务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oPi41vPG-1644302916060)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220127191056055.png)]
在这个页面可以点击"控制台输出"查看构建输出信息

3.9、源码检出

构建成功后,默认源码检出路径为:

/root/.jenkins/workspace/

也可以自定义源码检出位置Local module directory

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ndd5gqBL-1644302916061)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220128111828810.png)]

3.10、启动成功

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NJMiUp9M-1644302916061)(C:\Users\11244\AppData\Roaming\Typora\typora-user-images\image-20220128164007937.png)]

3.11、注意

如果是新的启动脚本可能检出源码后会提示没有执行权限,需要在svn命令行执行如下命令设置为可执行文件

svn propset svn:executable on startup.sh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值