前言
公司项目是springboot微服务架构,目前发布测试环境需要在项目里切换测试配置,执行maven打包命令,然后把n多个jar上传到测试服务器,在执行重启脚本。当开发厌倦了无休止的发版步骤后,有了搭Jenkins的想法,上报之后,回复是没有空闲的服务器,于是有了这份笔记。
Jenkins安装
这部分没啥说的,去Jenkins官网下载个Windows稳定版,然后点点点安装就是。需要注意的一点是,目前的稳定版需要jdk11或者jdk17支持,所以最好先装个jdk环境。
访问前准备
安装完成后,不要着急使用,Windows环境下Jenkins主目录默认在C:\ProgramData\Jenkins.jenkins。我个人对这个非常介意,修改主目录方式如下:
- 在环境变量里添加:JENKINS_HOME ,路径为你准备的路径;
- 安装目录下有个jenkins.xml,
<env name="JENKINS_HOME" value="..."/>;value为上面配置的路径; - Windows下汉化有点问题,想要比较好的汉化,需要在jenkins.xml中
<arguments>...</arguments>,中添加配置-Duser.language=C.UTF-8;
基本配置
接下来就是正式访问,老生常谈了,先解锁,然后安装插件,推荐的就行;然后基于项目,要安装 maven插件,node插件,ssh插件等,这个自己折腾吧。
全局工具配置
- Maven 配置
2. JDK,这里配置的是项目用的,我的是1.8
3. GIT,我用的默认的
4. maven,配置本地maven
5. nodeJs,这里是前端编译用的,查一下项目用的哪个版本,就用哪个版本
系统设置
- 主目录,修改了主目录,是否生效可以看这里
2. Maven项目配置,增加全局配置,配置本地maven仓库
-Dmaven.repo.local=E:/repository
3. 全局属性,增加环境变量
4. SSH Servers,配置远程服务器,因为我要发到测试环境,所以要配一个
任务配置
springboot项目
新建一个任务,任务名自己写一个,选择maven项目,然后确定
然后进入配置页面,主要配置源码管理,选择Git,然后配置项目Git地址
Credentials这里直接点添加,增加一个用户名、密码配置
自己维护下信息,ID不用写,会自己生成;描述可以写一下,标记是哪个Git
然后保存,勾选此配置,Repository URL下不在报红则证明配置生效;
然后分支指定要发布的分支;其他默认。
触发器我这里没什么需求,我是什么时候用什么时候点一下,有需求的可以自己研究下。
构建环境可以勾选此项,便于查找问题
然后是构建,这里我执行的是 clean install -P dev
构建后操作,我这里需要先备份服务器的文件,然后将本地打好的包推送到服务器,最后在执行重启脚本;这里就用到了之前配置的ssh server
执行复杂脚本失败时,有可能是环境问题,执行脚本命令前添加source /etc/profile。
注意
为避免出问题不知道怎么找,可以配置完git,就构建一下,然后等配置build后再构建一下,这样出问题了比较方便排查。
以上为boot项目的基本配置。
前端构建
后端配好只解放了一半,前端也要自动化。
首先创建一个任务,风格选自由,然后进入配置页面,配置好git。
重点来了,
构建环境选择此项
Build Steps选择Windows批处理,执行脚本
npm install && npm run build:dev ,具体以自己项目为准哈。
构建后操作,思路同上,先备份,然后替换文件,不需要重启。。
以上
小计
搞这个东西实属无奈之举,自己没服务器,有服务器还要考虑VPN问题,正好自己电脑配置还行,搞一个解放自己。
在Windows上搞这个会有很多奇奇怪怪的问题,比如git那我就配了好多次,明明配置对,但Jenkins就是认为有问题,删了重新添加就好了。。。
重启生效的东西,我只重启服务不行,重启电脑才识别到,暂时不清楚哪里有问题。
开此贴记录一下。