一、安装Jenkins
下载地址https://jenkins.io/zh/
1、war包启动
可以自己装一个tomcat或其他服务器,并且下载Jenkins.war的包,直接安装启动普通项目的方式配置。
2、rpm包安装
下载jenkins的安装包Jenkins各版本的rpm安装包,并且导入Centos中:
rpm -ivh jenkins-2.129-1.1.noarch.rpm // 可能需要修改一下版本号
安装比较简单,下面是一些简单的管理命令:
sudo service jenkins start | stop | restart | status
3、yum安装
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum install jenkins
下面是Jenkins的启动和关闭等命令:
sudo service jenkins start | stop | restart
sudo chkconfig jenkins on
安装完成后:
/usr/lib/jenkins/jenkens.war // Jenkins项目
/etc/sysconfig/jenkins 为rpm和yum安装的jenkins的配置文件,里面有启动端口等信息,默认是8080,
二、Jenkins启动和配置
1、jenkins的启动和基础配置
安装上面的安装和启动方式启动后,在浏览器中输入: ip:port即可,如http://127.0.0.1:8080
在服务器上查看当前的初始化密码:
[root@localhost jenkins]# cat /var/lib/jenkins/secrets/initialAdminPassword
fab311dde9dd4e2e8a1eb84d94d4f6be
2、该Jenkins实例似乎已离线(修改后重启即可)
若启动jenkins时出现该提示,说明jenkins本身没有链接上网络,是因为默认会去链接翻墙的网址。最好是不要让其在离线模式下安装,否则很多可插拔的插件没有安装上后面可能会比较麻烦(特别是对jenkins的组件和原理不是特别熟悉的情况下很容易刨坑),所以需要修改:
1)、 修改 /var/lib/jenkins/updates/default.json(如果没有就不管,版本问题)
该配置文件中http://www.google.com,查找更换为http://www.baidu.com
2)、 修改 /var/lib/jenkins/hudson.model.UpdateCenter.xml
项目中插件下载地址默认配置Https的地址(https://updates.jenkins.io/update-center.json),修改为http即可,有可以能还是不行就修改成下面的国内镜像。再重启服务。国内的镜像地址:
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
http://mirror.esuni.jp/jenkins/updates/update-center.json
2、Jenkins Overview
在构建Jenkins之前我们需要知道Jenkins是什么东西,能帮助我们做什么。才能更好的理解需要怎么样进行配置。Jenkins使用本地配置的git client端将远程GitLab上的代码下载到Jenkins服务器(即代码仓库拉取代码,可以是GitLab、可以是svn server端),并使用maven将项目进行打包,中途可以添加各种步骤,最后利用shell脚本等方式将项目包发送到远端的tomcat的项目目录(Tomcat有多种配置方式),并停止tomcat,更换项目包(包括:清除原项目包,copy现有项目包并进行解压),启动tomcat(这里tomcat是服务器,可以使用jetty等代替)。 总体来说就是Jenkins的两大特点:
1、Continuous Intergration 持续集成 :可以将整个集成项目的看成一个生命周期,按照组合插件的方式集成
2、Continuous Delivery 持续交付:持续交付项目给测试人员(测试环境)、用户(生成环境)等
3、插件安装
一般若使用Jenkins安装在Centos下,在安装的时候基本的插件就已经安装了,但是很多时候我们使用GitLab对项目进行管理,则需要安装GitLab Hook 的插件。有上图可知道,我们需要使用git的客户端,去GitLab上拉取代码,则需要在Jenkins本机安装git,并且将git的地址告诉Jenkins
# Centos7下安装的git地址为 而windows下的则为git安装目录下的git.exe文件地址
sudo yum install git
4、系统配置
位于系统管理》全局工具配置下对jdk、maven setting、maven、git(客户端)、gradle、Docker等的配置,使用yum install 方式安装Java所以不需要配置,所以需要设置Maven Setting、git 和maven:
A)全局工具配置
1)maven
2) jdk
3) git 使用Centos7下使用git的安装地址为 /usr/bin/git :

4) maven 安装
B)系统配置
1)maven 项目配置


B) 凭据
连接git/svn等的账号密码

三、构建项目
1、General(备注一下)
2、配置项目的仓库
可以在此处添加凭据
3、Build Triggers(构建触发器)
也可以选择其他方式构建
一般情况下是我们提交了代码(或者merge操作)后,自己手动触发构建项目,即手动进行部署。但是很多时候我们可以设置其他的触发方式:如下面的轮训,定时,脚本、使用比较多的是当我们提交代码(push操作)或者将分支合并(merge)到主干的时间进行触发,如下:
所以主要关系GitLab提交代码后的告知Jenkens的钩子(Hook)地址,如下:
4、构建方式

5、构建


可参考shell
#!/bin/bash
#export BUILD_ID=dontKillMe这一句很重要,这样指定了,项目启动之后才不会被Jenkins杀掉。
export BUILD_ID=dontKillMe
#指定最后编译好的jar存放的位置 即是发布目录
jar_path=/var/lib/jenkins/workspace
#Jenkins中编译好的jar位置 即是编译目录
jar_path_register=/var/lib/jenkins/workspace/pigx/pigx-register/target
jar_path_auth=/var/lib/jenkins/workspace/pigx/pigx-auth/target
jar_path_gateway=/var/lib/jenkins/workspace/pigx/pigx-gateway/target
jar_path_upms=/var/lib/jenkins/workspace/pigx/pigx-upms/pigx-upms-biz/target
#Jenkins中编译好的jar名称
jar_name_register=pigx-register.jar
jar_name_auth=pigx-auth.jar
jar_name_gateway=pigx-gateway.jar
jar_name_upms=pigx-upms-biz.jar
#将编译好的jar复制到最后指定的位置
cp ${jar_path_register}/${jar_name_register} ${jar_path}/tzh/${jar_name_register}
cp ${jar_path_auth}/${jar_name_auth} ${jar_path}/tzh/${jar_name_auth}
cp ${jar_path_gateway}/${jar_name_gateway} ${jar_path}/tzh/${jar_name_gateway}
cp ${jar_path_upms}/${jar_name_upms} ${jar_path}/tzh/${jar_name_upms}
#获取运行编译好的进程ID,便于我们在重新部署项目的时候先杀掉以前的进程
pid1=$(pgrep -f pigx-register.jar)
pid2=$(pgrep -f pigx-auth.jar)
pid3=$(pgrep -f pigx-gateway.jar)
pid4=$(pgrep -f pigx-upms-biz.jar)
echo ${pid1} ${pid2} ${pid3} ${pid4}
#依次启动子服务
sleep 30
java -Xmx512m -jar ${jar_path}/tzh/pigx-register.jar > ${jar_path}/tzh_log/pigx-register.log 2>&1 &
sleep 30
java -Xmx512m -jar ${jar_path}/tzh/pigx-auth.jar > ${jar_path}/tzh_log/pigx-auth.log 2>&1 &
sleep 30
java -Xmx512m -jar ${jar_path}/tzh/pigx-gateway.jar > ${jar_path}/tzh_log/pigx-gateway.log 2>&1 &
sleep 30
java -Xmx512m -jar ${jar_path}/tzh/pigx-upms-biz.jar > ${jar_path}/tzh_log/pigx-upms-biz.log 2>&1 &
#关闭上次启动的子服务
kill ${pid1} ${pid2} ${pid3} ${pid4}
构建完成

本文详细介绍了在CentOS7系统中安装Jenkins的三种方法:war包、rpm包和yum安装,并提供了启动、配置及插件管理的步骤。强调了Jenkins的持续集成和交付特性,以及系统配置和构建项目的关键环节。
822

被折叠的 条评论
为什么被折叠?



