linux 下安装Jenkins 并且持续集成项目(详细)

  • 官方解释
  • 准备工作
  • 首先安装jdk 和 maven
  • Jenkins 安装
  • 下载 jenkins 并且安装
  • 访问Jenkins 并且配置相关信息
  • 创建一个新任务


官方解释

Jenkins 和Hudson
目前最流行的一款持续集成及自动化部署工具。
Jenkins 和Hundson 之间的关系:2009 年,甲骨文收购了Sun 并继承了Hudson 代
码库。在2011 年年初,甲骨文和开源社区之间的关系破裂,该项目被分成两个独立的
项目:
 Jenkins:由大部分原始开发人员组成
 Hudson:由甲骨文公司继续管理
所以Jenkins 和Hudson 是两款非常相似的产品。


Jenkins 可以整合GitHub 或Subversion
Husband 也可以整合GitHub 或Subversion
二者既然是同源的工具软件,操作和指导思想就是接近的,所以本教程通过Jenkins

jenkins 集成gitLab_jenkins 集成gitLab

准备工作

首先安装jdk 和 maven

JDK安装

MAVEN安装

安装tomcat

详细过程同样省略,仅记录 Tomcat 服务器的账号密码 配置文件位置:
tomcat 目录下conf/tomcat-users.xml 添加以下内容

<rolerolename="manager-gui"/> 
<rolerolename="manager-script"/>
<rolerolename="manager-jmx"/>
<rolerolename="manager-status"/>
<user username="tomcat_user" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status"/>

Jenkins 安装

下载 jenkins 并且安装

本文使用rpm安装包的形式进行安装
jenkins 下载地址
rpm包下载地址-飞机直达官方地址可以下到 .war 文件

我这里下载的是最新包
jenkins-2.206-1.1.noarch.rpm
安装:

rpm -ivh  jenkins-2.206-1.1.noarch.rpm

修改配置:
vi /etc/sysconfig/jenkins

#修改jenkins默认的操作用户,linux下jenkins默认使用jenkins用户进行脚本和文件的操作,如果不修改,在部署项目时需要调整涉及到的文件和目录的操作权限,可以调整jenkins配置文件,将用户修改为root用户。
JENKINS_USER="root" #最好使用root

JENKINS_PORT="8888"  #默认的是8080 看你心情

以上配置都改好了我们可以启动了,报错内容如下

#常用命令
systemctl start jenkins #启动

systemctl stop jenkins #关闭

systemctl restart jenkins #重启

jenkins 集成gitLab_tomcat_02


根据提 "systemctl status jenkins.service"示查询错误,没有找到我的java的安装路径(我的Java 是安装在/usr/local/下的)

jenkins 集成gitLab_tomcat_03


通过whereis java 指令获取Java位置

jenkins 集成gitLab_tomcat_04


通过指令,添加jdk路径

vi  /etc/init.d/jenkins

jenkins 集成gitLab_jenkins 集成gitLab_05

#修改好之后reload一下
systemctl daemon-reload
#启动
systemctl start jenkins #没有报错说明启动成功!!

开放端口,并重启防火墙
CentOS 7 防火墙相关操作

#演示
firewall-cmd --zone=public --add-port=8888/tcp --permanent  #8888 刚才设置的端口

service firewalld restart  #重启

访问Jenkins 并且配置相关信息

访问jenkins

  • IP +端口
cat  /var/lib/jenkins/secrets/initialAdminPassword  # 获取验证
  • 选择安装推荐插件
  • 会自动下载 相关插件 ,【不成功也没关系,待会进入界面也可以安装 】

jenkins 集成gitLab_jenkins 集成gitLab_06

  • 安照提示一部一步走……
    主界面可能是英文,需要下载中文插件 !!!!!

** 配置全部变量 **

jenkins 集成gitLab_tomcat_07

  • 配置Maven

jenkins 集成gitLab_Jenkins_08

  • JDK
  • Maven
  • 安装 Deploy to container
    选中直接安装就可以了!!!

jenkins 集成gitLab_重启_09

创建一个新任务

jenkins 集成gitLab_jenkins 集成gitLab_10

  • 起一个名字,选中如图所示的那一项

    总览

    1.源码管理
  • 选择SVN ,添加SVN账户
  1. 构建选择刚才配置的maven 。
  2. 先构建一次,第一次构建比较慢。

jenkins 集成gitLab_tomcat_11


4. 构建后操作(通过Deploy 将war包传入tomcat中)

jenkins 集成gitLab_Jenkins_12


jenkins 集成gitLab_重启_13

5.重新构建验证结果

jenkins 集成gitLab_Jenkins_14


从上图可以看到项目打包成功,但是上传到tomcat中失败,经过分析发现从tomcat添加了验证

根据提示,我们需要在tomcat安装目录下的conf/tomcat-users.xml配置文件中增加用户角色和用户。

另外,还需要修改webapps/manager/META-INF/context.xml配置文件,修改访问地址的限制。

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="^.*$" />
</Context>

在tomcat 目录的/webapps 中可以看到发布的项目!

触发器的相关操作会在后续讲到……