1. 自动化部署
此文本的自动部署是默认安装好JenKins、JDK以及打包所需要的maven等配置。如果没有安装好Jenkins或其他配置,可参考:Jenkins之——构建Java Maven项目(WAR)并发布到远程Tomcat
① 创建项目工程
在创建项目工程时,比如parse_test_youqiang
工程的某些基础配置与parse_sign_test_api
有公共部分,则可以在创建parse_test_youqiang
项目工程时,将parse_sign_test_api
的参数配置全部复制到parse_test_youqiang
中,然后再进去修改单独配置参数。当然,两个项目一点共同点都没有也可以这样操作,只是要进去对所有的配置进行全部修改,比较麻烦。
因为是从已有工程复制过去的,所以parse_test_youqiang
工程创建好后,默认带有初始值。可根据业务自行修改。
② 设置构建保存策略:
打开一个Jenkins job的Configure页面,勾选上
”Discard old builds”
,填入Day of keep builds
(保留几天的build记录)和Max# of builds to keep
(保留最多几个build记录)。点击Advanced按钮,还可以填入
Days of keep artifacts(保留几天的artifact)和
Max# of builds to keep with artifacts(保留最多几个artifacts)。 通常来讲,如果磁盘空间足够,这4个选项设置为15就可以了(也就是两周 + 1天)。如果磁盘空间不足时,可以将这4个选项都设置为3。 Jenkins job在每次build结束后(无论成功还是失败)都会自动执行
discard old builds`,这样当下次执行build后,这个job占用的磁盘空间就会被释放。
1 | $JENKINS_HOME/jobs/[JOB_NAME]/builds 目录存储了该Jenkins job的全部构建记录(目录名为Build Number)。 |
③ 选取源代码地址、分支、gitlab版本
项目打包:
输入打包命令,JenKins会自动执行该命令。
需要注意的是,在后端打包时,需要进入到项目工程对应的目录下。
而JenKins会自动在JenKins的工作空间创建以项目工程名称的文件夹,然后将代码拉取到该目录下。故需要先进入到该目录下在执行maven打包命令。前端也是,也要进入到该目录下,只是执行的打包命令不同而已。
(注意,vue前端打包时,需要在将项目初始化,即:/data1/node-v14.4.0-linux-x64/bin/npm install
。因为该命令只需要执行一次即可,故不写入自动部署命令脚本中。如果不初始化项目,会导致打包失败)
④ 打好的jar传输与jar启动:
⑤ 前端文件传输:前端与后端配置基本相同,只是文件的路径不同的差异。
⑥ JenKins的公共配置:
2.JenKins设置中文
由于本Jenkins已经设置过了,故显示为中文
在插件管理,搜索 Localization: Chinese (Simplified),然后点击Install without restart
等待插件安装完成:
安装完成后,需要重启JenKins:在地址栏输入 restart 重启Jenkins:
即可看到效果:
如果重启后没有中文化,可能是插件没安装完全,上面步骤再来一次。
3.根据不同参数打不同环境的jar
在构建自动部署过程中引用该参数:
然后根据该参数选中的不同选项,发布到不同的服务器上去启动:
当env_options字段选中的值为parse_test时,则使用parse_test用户进行jar传输与启动:
当env_options字段选中的值为parse_rel时,则使用parse_rel用户进行jar传输与启动:
设置打包过程中使用env_options的值来进行不同的jar传输与启动:
实现后打包效果为:
即根据env_options
选中的不同的值,来实现不同服务器的打包部署。但这种方式的前提是代码仓库Git地址要是同一个地址,且打包的分支也是同一个分支才行,不满足这两个条件则不适合这种自动部署方式。打包时选择不同分支进行打包的操作后面介绍。
4. 打包时选择不同git分支自动部署
在插件管理中,安装Git Parameter Plug-In插件,安装后重启JenKins,安装步骤与JenKins设置中文步骤类似。
插件安装好后,进入待设置的工程配置里面:
在拉取源代码时,设置拉取源代码分支参数值:
参考链接:jenkins发布代码选择不同分支