zoukankan      html  css  js  c++  java
  • CentOS7.2 Jenkins部署

     1、安装配置java环境

    • 直接下载二进制安装包:
    # tar xvf jdk-8u111-linux-x64.tar.gz -C /usr/local/src/
    # ln -sv /usr/local/src/jdk1.8.0_111 /usr/local/jdk
    # vim /etc/profile
    export JAVA_HOME=/usr/local/jdk
    export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
    export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
    # source /etc/profile && java –version  
    • 使用rpm包安装:
    # rpm –ivh jdk-8u111-linux-x64.rpm  
    • 使用yum仓库安装:java-1.8.0-openjdk-1.8.0
    # yum install java-1.8.0-openjdk-1.8.0 -y  

     2、安装Jenkins

    • 通过rpm包安装Jenkins
    # rpm –ivh https://pkg.jenkins.io/redhat/jenkins-2.27-1.1.noarch.rpm
    # /etc/init.d/jenkins start
    # chkconfig jenkins on 
    

      

     3、配置Jenkins

    # vim /etc/sysconfig/jenkins
    JENKINS_HOME=“/var/lib/jenkins“ #数据目录,使用高IO大容量磁盘
    JENKINS_USER=“jenkins“ #启动用户
    JENKINS_PORT=“8080“ #启动端口
    

      

     4、访问web界面

    • jenkins第一次启动会生成一个随机密码,查看web界面提示文件即可查看到密码信息

     5、安装插件

    • 默认插口可能有些插件无法安装,可以后期安装
    • 亦可自己选择不安装所以插件

     


     6、手动安装插件

    # cd /var/lib/jenkins/plugins
    # tar xvf jenkins_plugin.tar.gz  #打包的一个插件包,展开即可使用插件
    # chown  jenkins.jenkins ./* -R
    # /etc/init.d/jenkins  start  
    • 插件下载地址 
    http://updates.jenkins-ci.org/download/plugins/ 

       

     7、创建用户

    • 创建登陆用户

    • 账号创建完成:


     8、登陆

     9、邮件配置

    • 点击 系统管理 --> 系统设置 

     10、发送邮件设置

    • 点击 系统管理 --> 系统设置 

     

     11、配置从gitlab上拉取代码

    • 需要安装的插件:
    gitlab Plugin
    
    gitlab Hook Plugin  

     

     12、添加Git用户

    参考此文档配置:http://www.cnblogs.com/python-gm/p/8883515.html
    

      

     13、Jenkins上添加一个认证用户

    • 此处用户应该为步骤12中,在GitLab中添加公钥的用户
    配置地址:http://172.20.3.206:8080/credentials/store/system/domain/_/newCredentials
    

      

     14、Jenkins创建项目

    • 进入Jenkins首页,点击新建,创建一个新的项目

     15、配置Jenkins项目详细信息

    • 描述信息

    • 配置GitLab地址和拉取代码的用户

    • 保存项目并测试(点击立即构建)

     

     16、部署代码检测工具:Sonar

    • 安装数据库:数据库要使用5.6版本,不支持5.5的版本
    # tar xvf mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz
    # ln -sv /usr/local/src/mysql-5.6.34-linux-glibc2.5-x86_64 /usr/local/mysql
    # cd /usr/local/mysql/
    # useradd  mysql  -s /sbin/nologin
    # chown  -R mysql.mysql  ./* -R
    # mkdir /data && chown  mysql.mysql /data/ -R
    # /usr/local/mysql/scripts/mysql_install_db  --user=mysql --datadir=/data/ --basedir=/usr/local/mysql/
    # cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
    # cp /usr/local/mysql/my.cnf  /etc/my.cnf
    # vim /etc/my.cnf
    basedir = /usr/local/mysql
    datadir = /data
    port = 3306
    # /etc/init.d/mysql  start
    #ln -sv /usr/local/mysql/bin/mysql /usr/bin/  
    • mysql授权:
    # /usr/local/mysql/bin/mysql
    CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
    GRANT ALL ON sonar.* TO sonar@"jenkins-server.com.cn" IDENTIFIED BY "123456";
    GRANT ALL ON sonar.* TO sonar@"192.168.10.%" IDENTIFIED BY "123456";
    FLUSH PRIVILEGES;
    /usr/local/mysql/bin/mysql  -usonar -p123456 -h192.168.10.131  

    • 部署sonar
    ### sonar依赖于java环境,而且java版本必须是1.8版本或更高,否则sonar启动失败
    
    # unzip sonarqube-5.6.zip
    # ln -sv /usr/local/src/sonarqube-5.6 /usr/local/sonar
    # grep "^[za-Z]" /usr/local/sonar/conf/sonar.properties
    sonar.jdbc.username=sonar
    sonar.jdbc.password=123456
    sonar.jdbc.url=jdbc:mysql://192.168.10.131:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
    sonar.web.port=8800
    
    # /usr/local/sonar/bin/linux-x86-64/sonar.sh  start  
    • 登陆sonar web站点:点击有上角login登录,默认用户名密码都是admin
    • 安装中文插件
    • 点击:administration --> system --> update center --> available,在后面的搜索框搜索插件名称(chinese),然后点install安装
    • 或在插件目录/usr/local/sonar/extensions/plugins执行
    wget https://github.com/SonarQubeCommunity/sonar-l10n-zh/releases/download/sonar-l10n-zh-plugin-1.11/sonar-l10n-zh-plugin-1.11.jar  
    • 然后重启服务:
    # /usr/local/sonarqube-5.6/bin/linux-x86-64/sonar.sh  restart
    

      

     17、部署扫描器

    • Sonar通过扫描器进行代码质量分析,即扫描器的具体工作就是扫描代码:
    # 下载地址:http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner
    
    # unzip sonar-scanner-2.6.1.zip 
    # ln -sv /usr/local/src/sonar-scanner-2.6.1 /usr/local/sonar-scanner
    # cd /usr/local/sonar-scanner/
    # grep "^[a-Z]" conf/sonar-scanner.properties 
    sonar.host.url=http://localhost:8800
    sonar.sourceEncoding=UTF-8
    sonar.jdbc.username=sonar
    sonar.jdbc.password=123456
    sonar.jdbc.url=jdbc:mysql://192.168.10.131:3306/sonar?useUnicode=true&characterEncoding=utf8
    

      

     18、jenkins关联到sonar和sonar-scanner

    • 在jenkins插件安装界面安装Sonar插件SonarQube Plugin
    • 点击: 系统管理 - 系统设置 

     

    • 填写sonar服务器信息:

    • 添加扫描器
    • 点击: 系统管理 --> Global Tool Configuration(全局管理) 

     20、项目配置扫描功能

    • 选择自己的项目 (demo) -->  构建触发器  -->  构建  -->  execute sonarqube scanner ,将配置文件的内容修改成如下格式填写完成后点保存:
    sonar.projectKey=test-demo
    sonar.projectName=test-demo
    sonar.projectVersion=1.0
    sonar.sources=./
    sonar.language=java|php|python   #(java|php|python 需要在sonar中安装对应的java|php|python语言包)
    sonar.sourceEncoding=UTF-8
    

      

    • 点击项目的立即构建,下图是执行成功的信息:

    • 查看项目的构建历史:

     21、构建失败邮件通知

    • 构建失败后会发送邮件通知管理员:选择自己的项目 (demo) -->  构建后操作 

    •  构建失败的邮件通知

     

     

     

  • 相关阅读:
    JQuery的学习笔记
    Ajax的学习笔记
    软件项目的托管平台gitHub
    滚动事件:document.body.scrollTop总是0的原因
    Less/Sass编译工具,koala使用指南
    CSS中的浮动和清除浮动,梳理一下
    PHP_GET数据获取
    php中header()
    服务端web开发:PHP简介以及常见语法
    C/S架构和B/S架构
  • 原文地址:https://www.cnblogs.com/evescn/p/8884125.html
Copyright © 2011-2022 走看看