Jenkins持续集成linux环境搭建

Jenkins环境搭建

GitLab是一个代码仓库,用来管理代码。Jenkins是一个自动化服务器,可以运行各种自动化构建、测试或部署任务。所以这两者结合起来,就可以实现开发者提交代码到GitLab,Jenkins以一定频率自动运行测试、构建和部署的任务,帮组开发团队更高效的集成和发布代码。

代码提交到Gitlab ------>触发Jenkins构建触发器------------>Jenkins执行构建任务

环境

Jenkins+Tomcat8+Gitlab+Maven+jdk1.8+Linux(CentOs6.9 64Bit)

一、软件安装

1.JDK安装

最新版本的Jenkins只支持JDK1.8,因此选择安装JDK1.8。
安装方式选择yum安装
也可以官网下载JDK1.8到本地安装

  • 搜索JDK安装包
    # yum search java|grep jdk
  • 下载JDK1.8
    # yum install java-1.8.0-openjdk
  • 配置环境变量&验证安装
    选择yum安装环境变量已自动配置
    # java -version 显示JDK版本则安装成功

2.Git安装

Jenkins连接Gitlab需要git版本为1.7以上

  • 查看系统Git版本
    # git --version如果版本低则卸载# yum remove git
  • 重装
    # cd /usr/src
    # wget https://www.kernel.org/pub/software/scm/git/git-2.7.3.tar.gz
    # tar xzf git-2.7.3.tar.gz
    # cd git-2.7.3
    # make prefix=/usr/local/git all
    # make prefix=/usr/local/git install
    # cd /usr/bin
    # ln -s /usr/local/git/bin/git git
  • 检查Git版本
    # git --version
  • 配置SSH(可省)

3.Maven安装

  • 选择yum安装
    # sudo wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo
    -O /etc/yum.repos.d/epel-apache-maven.repo
    # sudo sed -i s/\$releasever/6/g /etc/yum.repos.d/epel-apache-maven.repo
    # sudo yum install -y maven
  • 检查Maven是否安装成功
    # mvn -version

4.Tomcat安装

  • 下载tomcat8安装包
    apache-tomcat-8.5.38.tar.gz
  • 新建文件夹jenkin,放入tomcat安装包,解压
    # mkdir /home/jenkin
    # rz
    # tar -zxvf apache-tomcat-8.5.38.tar.gz
  • 修改tomcat访问端口为9123

    redirectPort="8443" />的8080改为9123

    protocol="AJP/1.3" />的8009改为其它的端口
    的8005改为其它的端口
  • 解除tomcat本机访问限制,不解除将无法远程部署到此tomcat
    修改webapps/host-manager/META-INF/context.xml与webapps/manager/META-INF/context.xml俩个文件,注释掉如下内容

    allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
  • 为tomcat添加远程访问账户
    # vi /home/jenkin/apache-tomcat-8.5.38/conf/tomcat_users.xml
    标签内添加成员并赋予角色



5.Jenkins安装

  • 下载Jenkins安装包
    jenkins.war
  • 部署到服务器tomcat上
    # rz
    # mv jenkins.war /home/jenkin/apache-tomcat-8.5.38/webapps
  • 添加tomcat默认打开项目为Jenkins(可省略)
    修改路径/jenkin/apache-tomcat-8.5.38/conf/server.xml下的server.xml文件在标签间插入

    其中path是说明虚拟目录的名字,如果你要只输入ip地址就显示主页,则该键值留为空,debug和reloadable一般就设
    置成0和true就行了,在项目编写和测试阶段reloadable设置为true表示只要tomcat中的项目有改动tomcat就会自动重
    新加载编译,可以带给我们一些方便,但是在项目发布阶段一般设为false,可以提高tomcat的性能。实际上要改动的
    就是docBase这个量,它指定的是登录tomcat默认的主页所在的文件夹,这个量默认情况下指定的是ROOT文件夹,现在
    改成jenkins文夹
二、环境搭建

0.Jenkins插件安装
Jenkins的功能由插件组成,需要什么功能先要安装插件
插件安装位置:仪表盘-----系统管理—插件管理,点击进入插件管理页面
过滤栏搜索所需插件,选择可选插件,安装以下插件:

  • Git与gitlab 插件:集成gitlab,拉取代码到Jenkins工作区
  • maven integration插件:新建maven项目,使用maven打包等功能
  • Deploy to container 插件:打包好的项目发布到tomcat
  • Gitlab Hook 插件:gitlab仓库代码发生变动(push)自动构建任务

1.Jenkins maven设置

服务器地址为http://192.168.10.56:9123
浏览器打开服务地址设置Jenkins初始登录账户,登录进入仪表盘。
系统设置----全局工具配置
新增Maven,设置Maven名,与MAVEN_HOME /home/maven/apache-maven-3.6.0

2.Jenkins JDK设置

同Maven设置JDK名,JDK_HOME:/usr/lib/jvm/java-1.8.0

3.Jenkins Gitlab设置

同Maven 设置Gitlab名与路径,应用保存

三、环境测试

测试项目:eggtart
Jenkins任务有多种,eggtart为maven工程,可以用项目中的pom.xml简化任务配置,因此新建一个Maven风格的任务。
进入任务构建配置页面
重点关注源码管理、构建触发器、构建、构建后操作

  • 源码管理
    填写仓库所在URL、初次使用点击add按钮添加仓库访问凭据,即登录gitlab的用户名与密码。拉取代码
    配置过SSH的可以使用SSH拉取仓库代码

  • 构建触发器
    任务执行的时机

    • Build after other projects are built:当另一个构建任务完成之后触发
    • Build periodically :周期性的触发
    • Build when a change is pushed to GitLab. GitLab CI Service URL: http://191.8.2.112:12000/project/test-go-dev当代码有更新的时候触发,通过GitLab CI 当代码有变化触发构建时,系统设置Jenkins location地址如下,要带工程名,格式为Ip:端口/部署的Jenkins名称(默认jenkins)/
    • GitHub hook trigger for GITScm polling:通过Github钩子触发
    • Poll SC:定期检查代码有无更新,有更新时触发
      本次构建选择默认触发器
  • 构建
    选择项目pom.xml配置文件
    Goals and options:填写maven命令,clean:每次构建都会清除上一次发布的WAR包,package:打包项目

  • 构建后操作
    构建后即执行过package命令,将war包部署到服务器,点击添加构建后操作步骤,选择发布到容器,即deploy war to a container;使用这个功能需要安装Deploy to container插件
    环境配置:
    War包路径:**/完整包名称
    Context path:项目访问根路径

点击add container添加tomcat容器:
添加连接tamcat的凭据,即配置tomcat时,tomcat-users.xml文件添加的账户,将此账户作为连接tomcat的凭据。
添加tomcat路径url:http://192.168.10.56:9123

点击保存,任务新建完成。

点击任务名称进入任务管理界面,点击立即构建,点击构建名称,进入构建管理页面,可以点击控制台输出查看构建过程。
构建成功浏览器输入项目地址http://192.168.10.56:9123/eggtart访问成功。

你可能感兴趣的:(Jenkins,Jenkins,Linux)