1. 安装SonarQube

1.1. 下载

下载地址:https://www.sonarqube.org/downloads/

本次使用安装包为:sonarqube-7.4.zip

需要提前准备jdk1.8、mysql-5.6。

1.2. 安装

1、解压安装包

2、准备数据库(mysql)

a)新建数据库用户和数据库

建库sql (sonar/sonar)

CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;

CREATE USER 'sonar' IDENTIFIED BY 'sonar';

GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';

GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';

FLUSH PRIVILEGES;

b)修改数据库配置文件conf/sonar.properties :

sonar.jdbc.username=sonar

sonar.jdbc.password=sonar

sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding    =utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

1.3. 启动

新建sonar用户;

启动mysql数据库;

然后执行如下命令:

su sonar

cd /data/sonarqube-7.4/bin/linux-x86-64

./sonar.sh start

注意不要使用root启动。sonarqube自带了es,所有不能使用root权限。

1.4. 访问

默认访问地址:http://10.15.1.28:9000

admin/admin

2. 安装配置Jenkins

2.1. Jenkins安装

2.2. 安装gradle

下载安装包解压,配置环境变量

export GRADLE_HOME=/data/gradle-2.8

export PATH=$GRADLE_HOME/bin:$PATH

本次使用2.8版本是项目需要。

2.3. 安装Jenkins插件

  1. SonarQube Scanner for Jenkins
  2. Folders Plugin
  3. Git client plugin
  4. Git plugin
  5. Python Plugin

2.4. 工具配置

1、SonarQube Scanner配置:

 

 

3. Jenkins任务配置

3.1. java任务配置

clean build -x test

sonar.projectKey=$JOB_BASE_NAME

sonar.projectName=$JOB_BASE_NAME

sonar.projectVersion=1.0.0

sonar.language=java

sonar.java.source=1.8

#sonar.sources=src

sonar.sources=${WORKSPACE}/src/main/java

sonar.sourceEncoding=UTF-8

sonar.java.binaries=${WORKSPACE}/build/

报告查看地址:

<a href="http://10.15.1.28:9000/dashboard?id=$JOB_BASE_NAME">http://10.15.1.28:9000/dashboard?id=$JOB_BASE_NAME</a><br>

(本邮件由系统自动发出)

3.2. python任务

只列出与java任务不同之处:

sonar.projectKey=$JOB_BASE_NAME

sonar.projectName=$JOB_BASE_NAME

sonar.projectVersion=1.0.0

sonar.sources=.

sonar.sourceEncoding=UTF-8

4. 附录

4.1. elasticsearch启动错误

1、max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

每个进程最大同时打开文件数太小,可通过下面2个命令查看当前数量

ulimit -Hn

ulimit -Sn

修改/etc/security/limits.conf文件,添加如下配置:

sonar    hard    nofile       65536

sonar    soft    nofile       65536

root    hard    nofile       65536

root    soft    nofile       65536

重新登陆即生效。

临时修改命令如下:(重启后失效)

ulimit -n 65535

2、max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

修改/etc/sysctl.conf文件,添加配置

vm.max_map_count=262144

执行命令sysctl -p生效

SonarQube + Jenkins代码审查环境安装文档 v1.2的更多相关文章

  1. _00024 尼娜抹微笑伊拉克_云计算ClouderaManager以及CHD5.1.0群集部署安装文档V1.0

    笔者博文:妳那伊抹微笑 itdog8 地址链接 : http://www.itdog8.com(个人链接) 博客地址:http://blog.csdn.net/u012185296 博文标题:_000 ...

  2. CentOS6.5下安装JDK1.7+MYSQL5.5+TOMCAT7+nginx1.7.5环境安装文档

    ----------------CentOS6.5下安装JDK1.7+MYSQL5.5+TOMCAT7+nginx1.7.5环境安装文档----------------------- [JDK1.7安 ...

  3. 环境安装文档(for Ubuntu)

    这个文档的目标是:各位小伙伴通过这个文档,可以在一台全新的 Ubuntu 电脑上搭建平常开发使用的环境,主要包含 Node.js, git 和 编辑器部分. 这是针对 Ubuntu 系统的安装文档,W ...

  4. OCP 11G 实验环境安装文档 ( RedHat5.5 + Oracle11g )

    RedHat5.5 linux下Oracle11g软件安装 一.配置虚拟机 为了创建和配置虚拟机,你需要添加硬件设备如磁盘和cpu,在你开始安装之前,创建一个windows目录作为存放虚拟机的目录 目 ...

  5. [转] Kubernetes集群安装文档-v1.6版本

    [From] https://www.kubernetes.org.cn/1870.html http://jimmysong.io/kubernetes-handbook

  6. linux centos7 安装虚拟Python环境,pyenv安装文档

    python多版本控制pyenv安装文档 1.在线安装: curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-i ...

  7. Docker相关环境全套安装文档兼小技能

    Docker相关环境全套安装文档兼小技能 以下环境皆为ubuntu16.04,主要安装docker,docker-compose,docker仓库等. Docker安装 参考官方 A: 有源安装 Ub ...

  8. Jenkins构建项目帮助文档

    Jenkins构建项目帮助文档 主要步骤 一.配置jdk 1.1.   下载jdk,安装到自己电脑磁盘的Java目录下(比如:D:\Java\jdk). 1.2.   Jdk环境变量的配置: 1. 鼠 ...

  9. ORACLE LINUX 6.3 + ORACLE 11.2.0.3 RAC + VBOX安装文档

    ORACLE LINUX 6.3 + ORACLE 11.2.0.3 RAC + VBOX安装文档 2015-10-21 12:51 525人阅读 评论(0) 收藏 举报  分类: Oracle RA ...

随机推荐

  1. 项目Beta冲刺(3/7)(追光的人)(2019.5.25)

    所属课程 软件工程1916 作业要求 Beta冲刺博客汇总 团队名称 追光的人 作业目标 描述Beta冲刺每日的scrum和PM报告两部分 队员学号 队员博客 221600219 小墨 https:/ ...

  2. Nuxt.js 提供了两种发布部署应用的方式:服务端渲染应用部署 和 静态应用部署

    官方网址:https://zh.nuxtjs.org/guide/commands/#%E5%8F%91%E5%B8%83%E9%83%A8%E7%BD%B2

  3. CodeForces - 1037H: Security(SAM+线段树合并)

    题意:给定字符串S:  Q次询问,每次询问给出(L,R,T),让你在S[L,R]里面找一个字典序最小的子串,其字典序比T大. 没有则输出-1: 思路:比T字典序大,而且要求字典最小,显然就是在T的尾巴 ...

  4. CF300D Painting Square

    Painting Square https://codeforces.com/problemset/problem/300/D 给了一个理解起来较复杂但是本质上很简单的分形. 题解 很显然,只有边长为 ...

  5. js回调与异步加载的用法

    以前还是菜鸟的时候(虽然现在依然很菜 -_-|| )对异步加载与回调函数的技术无比向往,但也一直没有使用过,这次因为页面逻辑太过复杂,一堆请求逻辑,如果还是用顺序请求,页面的速度... 领导又要挠头了 ...

  6. 基于链表的栈(Java)

    package com.rao.linkList; /** * @author Srao * @className LinkedStack * @date 2019/12/3 13:59 * @pac ...

  7. jQuery中判断数组

    判断数组里面是否包含某个元素可以使用 $.inArray("元素(字符串)",数组名称) 进行判断 ,当存在该元素(字符串)时,返回该元素在数组的下标,不存在时返回 -1 jQ=& ...

  8. 关于System.TypeInitializationException异常

    什么是System.TypeInitializationException 作为类初始值设定项引发的异常的包装器而引发的异常. 继承 Object Exception SystemException ...

  9. expr算术运算

    #!/bin/bash #expr MY_VAR1= MY_VAR2= #expr 是命令 MY_VAR3=`expr $MY_VAR1 + $MY_VAR2` MY_VAR4=`expr $MY_V ...

  10. 使用blessed-contrib 开发专业的终端dashboard

    blessed-contrib 是blessed 的一个扩展包,以前有说过blessed(一个方便的开发cli 的工具) 我们使用blessed-contrib可以开发专业的终端dashboard 功 ...