准备工作
- 服务器一台 (我用的是centos7 )
- jenkins的安装包
- jdk (因为jenkins也是java写的 所以需要个环境)
- maven(因为我用的springboot多模块项目 需要借助maven打包)
- node (因为我前端用的是vue 需要借助node打包构建发布)
jenkins安装
- jenkins2.289安装包
链接: https://pan.baidu.com/s/15VP_rKVyVu_TvCf50eAkKQ
提取码:w21q
基础搭建:
-
先创建个文件夹放jenkins (mkdir jenkins)
-
使用工具传到服务器上 或者 使用ssh传递
-
进入到jenkins文件夹的位置 (cd jenkins)
-
使用rpm解压jenkins的包
rpm -ivh jenkins-2.289.2-1.1.noarch.rpm
-
解压成功之后 默认安装在 /usr/lib/jenkins ,使用whereis也可以查询
whereis jenkins
-
启动 jenkins
service jenkins start
-
上述步骤可能出现的问题:
- 无法启动,可能是jdk的位置不正确
vim /etc/init.d/jenkins 添加自己的jdk位置 (就是/etc/profile中的JAVA_HOME)
接着重启即可(service jenkins restart ) - 可能8080端口被占用了
接着重启即可(service jenkins restart )vim /etc/sysconfig/jenkins 修改 JENKINS_PORT="9999"
- 无法启动,可能是jdk的位置不正确
-
那么应该可以正常跑起来了,访问就是你的ip:端口就行了
-
接下来就是照着抄密码就行了
cat /var/lib/jenkins/secrets/initialAdminPassword
-
这边有个坑就是新手入门的地方
- 下载那些插件会非常的慢 (因为访问的是外国的地址估计被墙了)
- 可以参考我的另一个文章换源 jenkins新手入门换源 千万别点进去安装插件 只要在选择是否自定义安装还是新手教程的页面就行了
-
接下来就是新手入门,速度安装的非常快,哈哈哈
后端搭建:
-
因为后端是springboot工程,所以需要安装maven的,jenkins里面也需要配置maven的,git也是需要的,因为是通过git协调开发的
-
安装必须要的插件(maven插件和Git插件和GitLab插件和GitLab hook插件和Maven Integration插件和Publish Over SSH插件)
-
安装了以上的插件就可以去配置了
-
照着服务器的配置去配置就行了 (一定要正确 不然会爆红 后期用的时候也没法用)
-
创建item
-
输入任务名称 (随便取,选择maven项目,如果没有那就说明没装maven插件 装上就行了)
-
源码管理
- Repository URL 就是你代码仓库的url
- Credentials 需要创建凭证
- 添加凭证
-
构建触发器
- 我选择的是有push的时候触发钩子 (这个url和Secret token非常重要配置GitLab中的webHooks时候需要)
- 我选择的是有push的时候触发钩子 (这个url和Secret token非常重要配置GitLab中的webHooks时候需要)
-
Build
- 我使用的maven 直接clean 然后package 跳过测试 我已经在pom里面配置了
- 我使用的maven 直接clean 然后package 跳过测试 我已经在pom里面配置了
-
Post Steps
- 这是build好之后干嘛,我这直接cp jar包 然后nohup启动
- 这是build好之后干嘛,我这直接cp jar包 然后nohup启动
-
因为是push的时候触发hook,所以还需要去GitLab中配置一下
- 之前的那个url和token用在这里
- 使用这个push events 测试一下 (200就说明ok)
- 之前的那个url和token用在这里
-
保存就行了 后端基本就结束啦
-
上述步骤可能出现的问题:
- GitLab WebHooks 403
jenkins 增加匿名用户具有可读权限,去掉跨站点请求伪造 - Urlis blocked:Requests to the local network are not allowed
使用GitLab管理员账号开通运行本地网络限制
- GitLab WebHooks 403
前端搭建:
-
先得装上node环境,node插件
-
配置node插件
- 新建item
- 选择自由风格
- 源码管理同上
- 触发器同上
- GitLab配置同上
- 构建的时候因为需要npm install 和npm build 所以选择Execute Shell
-
保存就行了