环境:linux+jdk8+mysql5.7.31+sonarqube7.5+sonar-scanner-4.4+jenkins2.249+sonar-l10n-zh-plugin-1.25.jar

安装:sonarqube7.5

wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.5.zip

解压:unzip sonarqube-7.5.zip

配置权限:chmod -R 777 sonarqube-7.5

Mysql安装配置(初始安装需执行,目前环境已有可跳过该步骤)

安装

下载:wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz

解压:tar -xvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz

重命名:mv mysql-5.7.31-linux-glibc2.12-x86_64 mysql5.7

配置

配置文件修改:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

port=2222

basedir=/home/deploy/mysql5.7/
datadir=/home/deploy/mysql5.7/data/
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
user=root
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

!includedir /etc/my.cnf.d

[client]
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock

[mysql]
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock

 

添加环境变量:echo "PATH=/home/deploy/mysql5.7/bin/:$PATH" >> /etc/profile

刷新:source /etc/profile

创建data:mkdir/home/deploy/data

初始化数据库:mysqld --initialize --user=mysql --basedir=/home/deploy/mysql5.7/ --datadir=/home/deploy/mysql5.7/data/

报错解决:yum install -y libaio

停止:/etc/init.d/mysqld.server stop

启动:/etc/init.d/mysqld.server start

需要跳过授权表,启动数据库,因为mysql默认会设置一个随机密码

/etc/init.d/mysqld.server start --skip-grant-tables

进入数据库:mysql -uroot

修改密码:update mysql.user set authentication_string=password('密码') where user='root' and host='localhost';

刷新提交:flush privileges;

新建数据库

Navicat连接接数据库并新建sonar数据库

Linux sonarqube配置

vim /home/deploy/sonarqube-7.5/conf/sonar.properties

sonar.jdbc.url=jdbc:mysql://ip:port/database_name?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=username
sonar.jdbc.password=password
sonar.sorceEncoding=UTF-8
sonar.login=admin
sonar.password=admin

Linux配置sonar-scanner

安装

下载sonar-scanner:wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.4.0.2170-linux.zip

放到 /home/deploy/sonarqube-7.5/ 目录下

解压:unzip sonar-scanner-cli-4.4.0.2170-linux.zip

配置

配置环境变量:

vim /etc/profile 添加以下:

# sonar-scanner
export SONAR_RUNNER_HOME=/home/deploy/sonarqube-7.5/sonar-scanner-4.4.0.2170-linux
export PATH=$SONAR_RUNNER_HOME/bin:$PATH

sonarqueb汉化

下载汉化插件:wget https://github-production-release-asset-2e65be.s3.amazonaws.com/6060405/7e74d980-0eb4-11e9-8a15-18f3ab1d1e41?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200902%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200902T080906Z&X-Amz-Expires=300&X-Amz-Signature=1f30d24a73a3630c19fb7f395577b6022c9738460b4e96c2a516e8ea205dc107&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=6060405&response-content-disposition=attachment%3B%20filename%3Dsonar-l10n-zh-plugin-1.25.jar&response-content-type=application%2Foctet-stream

放到 /home/deploy/sonarqube-7.5/extensions/plugins/ 目录下

新建sonar用户

useradd sonar

启动sonar

切换到sonar用户执行

启动:sh sonar.sh start

停止:sh sonar.sh stop

重启:sh sonar.sh restart

输出以下代表以启动成功

浏览器输入:ip:9000,即可打开sonarqube

初始账号密码:admin admin

Jenkins项目结合SonarQube配置

添加sonar-scanner插件

配置sonar-scanner

生成sonarqube token

登陆sonarqube会自动弹出生产token窗口

配置sonar-sacnner token

配置sonarqube server

项目配置

sonar.login=sonarqube用户名
sonar.password=sonarqube密码
sonar.projectKey=Key,不要重复,最好是项目名
sonar.projectName=不要重复,最好是项目名
sonar.projectVersion=1.0.0
sonar.sourceEncoding=UTF-8
sonar.sources=项目代码路径
sonar.java.binaries=项目打包编译后路径

这里的$pname是项目路径,$name是项目名,设置了全局变量参数,方便一点

执行结果

命令行添加jenkins项目sonar配置

如果Jenkins项目太多需要添加sonarqube配置,可以直接在Jenkins工作目录下的Jobs/config.xml里直接添加配置。我的任务配置文件最后都是执行shell,执行shell在config.xml是 /hudson.tasks.Shell> ,所以就在之后 /hudson.tasks.Shell> 添加配置,如下:

sed -i 's/<\/hudson.tasks.Shell>/&\n<hudson.plugins.sonar.SonarRunnerBuilder plugin="sonar@2.12">\n<project><\/project>\n<properties>sonar.login=admin\nsonar.password=admin\nsonar.projectKey=项目名\nsonar.projectName=项目名\nsonar.projectVersion=1.0.0\nsonar.sourceEncoding=UTF-8\nsonar.sources=\/home\/deploy\/jenkins\/workspace\/项目名\/src\nsonar.java.binaries=\/home\/deploy\/jenkins\/workspace\/项目名\/target\/classes<\/properties>\n<javaOpts><\/javaOpts>\n<additionalArguments><\/additionalArguments>\n<jdk>(Inherit From Job)<\/jdk>\n<task><\/task>\n<\/hudson.plugins.sonar.SonarRunnerBuilder>/' /home/deploy/jenkins/jobs/项目名/config.xml

这样每次改下项目名执行命令就可以添加了,不用在Jenkins页面添加了

Linux搭建SonarQube的更多相关文章

  1. Linux 搭建Nexus

    Linux 安装Maven和nexus代理仓库 1    说明 环境:redhat Enterprise Linux Server5.3-x64. 版本:Maven 3.0.5 ,Nexus-2.5. ...

  2. Linux 搭建SVN 服务器(转)

    一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...

  3. 原 Linux搭建SVN 服务器2

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  4. 原 Linux搭建SVN 服务器

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  5. Linux搭建SVN 服务器

    Linux搭建SVN 服务器 1          安装SVN 2          使用客户端连接 2.1       使用windows的客户端 2.2       使用Linux下的命令行 3  ...

  6. Linux 搭建SVN server

    一. SVN 简单介绍 Subversion(SVN) 是一个开源的版本号控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository ...

  7. Linux搭建SVN 服务器(转)

    转自:http://my.oschina.net/lionel45/blog/298305 Linux搭建SVN 服务器 作者: 沈小然    日期:2014年 8月 5日 1          安装 ...

  8. Linux 搭建SVN 服务器

    一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...

  9. linux搭建phantomjs+webdriver+testng+ant自动化工程

    因为项目的原因,需要将脚本在linux环境无浏览器化去跑,那么原有的在windows系统下有浏览器化的自动化脚本场景就不适用了,这里给出linux系统下搭建phantomjs+webdriver+te ...

随机推荐

  1. C#LeetCode刷题-随机数

    随机数篇 # 题名 刷题 通过率 难度 470 用 Rand7() 实现 Rand10()   34.4% 中等 478 在圆内随机生成点   22.8% 中等 497 非重叠矩形中的随机点   22 ...

  2. Linux学习日志第一天——基础命令①

    文章目录 前言 命令的作用及基本构成 关于路径 命令 ls (list) 命令 pwd (print working directory) 命令cd (change directory) 命令 mkd ...

  3. swagger2配置详解

    1.写在controller上的注解 1.1 @Api 代码 @Api(tags = "用户相关接口", description = "提供用户相关的 Rest API& ...

  4. CentOS 阿里源

    [centos] name=centos baseurl=http://mirrors.aliyun.com/centos/7/os/x86_64/ enabled= gpgcheck= [epel] ...

  5. pypcap rpm制作

    1.下载地址 https://pypi.org/project/pypcap/#history 2.下载后,解压并制作rpm tar -xvf pypcap-1.2.3.tar.gz python s ...

  6. python中eval, exec, execfile,和compile

    eval(str [,globals [,locals ]])函数将字符串str当成有效Python表达式来求值,并返回计算结果. 同样地, exec语句将字符串str当成有效Python代码来执行. ...

  7. Docker-Docker与IPV6

    公司计划在2020年前完成IPV6化改造,于是我先行查阅了一些资料了解Docker进行IPv6化的可能性. 预计明年正式开始测试. 方法一.使容器中的服务支持IPv6地址 不为容器中的服务特别分配IP ...

  8. 团队作业3 需求改进&系统设计(银河超级无敌舰队)

    目录 一.需求&原型改进 1. 需求改进 2. 修改说明书 3.功能分析 4. 调整WBS及计划 二.系统设计 1. 总体设计 2. 数据库设计 3.社团设计 三.Alpha任务分配计划 1. ...

  9. linux系统学习

    一.linux系统如何配置环境变量 1.在Windows 系统下,很多软件安装都需要配置环境变量,比如 安装 jdk ,如果不配置环境变量,在非软件安装的目录下运行javac 命令,将会报告找不到文件 ...

  10. 更换git远程仓库地址

    通过命令直接修改远程仓库地址 git remote 查看所有远程仓库 git remote xxx 查看指定远程仓库地址 git remote set-url origin 你新的远程仓库地址 先删除 ...