CentOS7安装配置SonarQube
一、SonarQubeServer
1、前提
安装好mysql5.7和jdk1.8。
(1)安装Mysql
create user 'sonar'@'localhost' identified by 'sonar';
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
grant all privileges on sonar.* to 'sonar'@'localhost';
mysql -uroot -p123456
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'sonar' IDENTIFIED BY 'sonar123';
GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar123';
GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar123';
FLUSH PRIVILEGES;
#mysql设置:一旦所有的SonarQube表都使用了InnoDB引擎,首先要做的就是使用innodb_buffer_pool_size参数为你的MySQL实例分配最大数量的RAM,并给参数至少15Mb query_cache_size
#检查mysql引擎,确保为InnoDB
show engines;
#查看缓存开启状况
SHOW STATUS LIKE 'qcache%';
show variables like '%query_cache%';
#设置缓存
vi /etc/my.cnf
[mysqld]
character_set_server=utf8
query_cache_type=1
query_cache_size=32M
#重启
service mysqld restart
(2)安装JDK8
2 进入到目录 /usr/local/ 中:
cd /usr/local/
3 创建目录 tools:
mkdir -p tools
4 进入到目录 /usr/local/tools 中:
cd tools/
5 下载 jdk-8u91-linux-x64.tar.gz
wget http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.tar.gz?AuthParam=1521514537_5997ca9bc07655e6b192a38bc9d18532
6 解压缩 jdk-8u161-linux-x64.tar.gz 文件:
tar -zxvf jdk-8u161-linux-x64.tar.gz
7 返回到上一级并创建 /usr/local/jdk 目录:
cd ..
mkdir -p jdk
8 进入到 tools 目录后将 jdk1.8.0_91 移动到 jdk 目录中: cd tools mv jdk1.8.0_161/ ../jdk/
9 打开 /etc/ 目录下的 profile 文件:
vim /etc/profile
将如下代码追加到 profile 文件末尾:
# idea - jdk8 settings start 2016-05-01
JAVA_HOME=/usr/local/jdk/jdk1.8.0_161
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/dt.jar
export JAVA_HOME JRE_HOME PATH CLASSPATH
# idea - jdk8 settings end - 2016-05-01
按 Esc 键、输入 wq! 回车,保持并退出。
10 即可启用新的配置: source /etc/profile
11 输入 java -version 查看 JDK 的版本:
[root@iZ94hws2fzlZ jdk1.8.0_91]# java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)
2、下载与准备
(1)环境准备
系统参数需要满足下述要求
- sonarqube一定不能在root帐户下运行
- vm.max_map_count 大于或等于 262144
- fs.file-max 大于或等于 65536
- 运行SonarQube的用户至少可以打开 65536个 文件描述符
- 运行SonarQube的用户可以打开至少2048个线程
- seccomp已被编译 进内核
根据需要执行下述命令以使内核参数符合sonar安装需求
#可以使用以下命令查看这些值:
sysctl vm.max_map_count
sysctl fs.file-max
ulimit -n
#可以通过以root身份运行以下命令来为当前会话动态设置它们:
sysctl -w vm.max_map_count=262144
sysctl -w fs.file-max=65536
ulimit -n 65536
#为了更永久设置这些值,则必须修改/etc/sysctl.d/99-sonarqube.conf(或/etc/sysctl.conf文件)#文件末尾添加下述两行
vi /etc/sysctl.conf
vm.max_map_count=262144
fs.file-max=65536
#在/etc/profile文件末尾添加ulimit -n 65536
vi /etc/profile
ulimit -n 65536#保存后运行#source /etc/profile 使其生效
source /etc/profile
(2)下载
[root@node3 ~]# wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-6.7.2.zip
(3)解压
[root@node3 ~]# unzip sonarqube-6.7.2.zip -d /opt/
(4)增加用户sonar
[root@node3 ~]# useradd sonar
[root@node3 ~]# chown -R sonar /opt/sonarqube-6.7.2/
3、编辑sonarqube配置文件
sonarqube-6.7]# vim conf/sonar.properties




保存,退出;
4、运行脚本启动服务
sonarqube-6.7]# su sonar ./bin/linux-x86-64/sonar.sh start //以普通用户起服务,不然es启动会报错,用法:console、start、status、stop...

sonarqube-6.7]# su sonar ./bin/linux-x86-64/sonar.sh status

注意:这里立即查看状态,短时间内意义不大,因为一开始显示running,并不代表会一定在后面的时间内running!
也就是说,在启动彻底完成前不可信!什么叫启动"彻底完成"? 见下面:

再次确认:

至此,SonarQube启动成功!
排错说明:可以先跟着sonar.log日志,如果报了es错误,可以去查看es.log;如果报了web错误,那么就是查看web.log。
都可以在日志里有迹可寻。(es.log,web.log跟sonar.log在同一个目录下)
5、登录web端
在浏览器输入:http:// IP:PORT
初始用户:admin
初始密码:admin
登录后,可以点击自己账户修改密码。
6、汉化
#添加汉化插件
#从https://docs.sonarqube.org/display/PLUG/Plugin+Library下载汉化插件移动至指定目录即可
sonar-l10n-zh-plugin-1.19.jar
放在/sonarqube-6.7.2/extensions/plugins 目录中
#重启sonar
cd /opt/sonarqube-6.7.2/bin/linux-x86-64/
./sonar.sh restart
二、SonarQubeScanner
1、下载
sonar-scanner-3.0.3.778-linux.zip
2、解压
没有unzip的话,先安装unzip
yum install -y unzip
unzip sonar-scanner-3.0.3.778-linux.zip
3、修改配置文件
sonar-scanner-3.0.3.778-linux/conf/sonar-scanner.properties
#----- Default SonarQube server
sonar.host.url=http://localhost:9000
#----- Default source code encoding
sonar.sourceEncoding=UTF-8
4、设置环境变量
/etc/profile文件末尾加入下面三句:
SONARSCANNER_HOME=/home/sonar-scanner-3.0.3.778-linux/bin PATH=$PATH:$SONARSCANNER_HOME
export SONARSCANNER_HOME PATH
启用新的配置:
source /etc/profile
5、检查sonar-scanner安装是否成功
检查sonarscanner是否配置成功:
sonar-scanner -h
出现如下信息表示安装配置成功:
sh-4.2# sonar-scanner -h
INFO:
INFO: usage: sonar-scanner [options]
INFO:
INFO: Options:
INFO: -D,--define <arg> Define property
INFO: -h,--help Display help information
INFO: -v,--version Display version information
INFO: -X,--debug Produce execution debug output
6、项目配置文件sonar-project.properties
sonar-project.properties放在项目根目录中:
sonar.projectKey=icloud3.12
sonar.projectName=icloud3.12
sonar.projectVersion=3.12
sonar.sourceEncoding=UTF-8
sonar.language=java
sonar.scm.disabled=true
sonar.modules=dispatch-service,dispatch-client
dispatch-service.sonar.modules=dispatch-cfgmanager,dispatch-taskmanager,dispatch-usermanager
dispatch-service.dispatch-cfgmanager.sonar.projectName=icloudcfgserver
dispatch-service.dispatch-cfgmanager.sonar.sources=.
dispatch-service.dispatch-cfgmanager.sonar.java.binaries=target/classes
dispatch-service.dispatch-taskmanager.sonar.projectName=icloudtaskserver
dispatch-service.dispatch-taskmanager.sonar.sources=.
dispatch-service.dispatch-taskmanager.sonar.java.binaries=target/classes
dispatch-service.dispatch-usermanager.sonar.projectName=iclouduserserver
dispatch-service.dispatch-usermanager.sonar.sources=.
dispatch-service.dispatch-usermanager.sonar.java.binaries=target/classes
dispatch-client.sonar.projectName=icloudwebserver
dispatch-client.sonar.sources=.
dispatch-client.sonar.language=js
7、执行sonar-scanner
在项目根目录中执行
sonar-scanner
CentOS7安装配置SonarQube的更多相关文章
- Centos7安装配置gitlab
Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-serve ...
- Centos7安装配置Apache+PHP+Mysql+phpmyadmin
转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl ...
- Centos7安装配置JDK8
Centos7安装配置JDK8 一.准备工作 第一步,去甲骨文官网下载Jdk相应的版本,我这里下载的是jdk1.8. 第二步将你从官网上下载下来的jdk使用FTP工具上传到云服务器上的相应目录,我的是 ...
- centos7命令行和图形界面的相互切换(附centos7安装配置教程)
一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...
- (转)Centos7安装配置NFS服务和挂载
Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...
- CentOS7 安装配置笔记
CentOS7 安装配置笔记 1.通过镜像安装 CentOS7 ==============================* 使用 UltraISO 9.7 或者 rufus-3.5p 制作ISO的 ...
- Centos7安装配置jenkins(Tomcat)
Centos7安装配置jenkins(Tomcat) 一.准备工作 1.1 安装JDK1.8 具体安装过程不在赘述. 1.2 下载jenkins的war包 jenkins官网下载地址:https:// ...
- CentOS7 安装配置rsync
centos7自带rsync,今天简单记录下. rsync安装配置步骤 服务器端: 1.修改默认配置文件/etc/rsyncd.conf,该成如下: # /etc/rsyncd: configurat ...
- centos7安装配置zabbix4.0
zabbix01 198.8.8.211 zabbix-server4.0 zabbix02 198.8.8.212 zabbix-agent4.0 一:zabbix服务端环境 ...
随机推荐
- ffmpeg 学习
1.ffmpeg使用语法 命令格式: ffmpeg -i [输入文件名] [参数选项] -f [格式] [输出文件] ffmpeg [[options][`-i' input_file]] ...
- java中的==、equals()源码分析
浅谈Java中的equals和== 在初学Java时,可能会经常碰到下面的代码: 1 String str1 = new String("hello"); 2 String str ...
- 2、开发环境搭建-window平台
一.搭建ReactNative环境 首先安装node.js和python2.xx版本,不要装python3.xx,这个官方是特别说明的,请注意.NodeJs官方下载:https://nodejs.or ...
- 【CodeForces 803 C】Maximal GCD(GCD+思维)
You are given positive integer number n. You should create such strictly increasingsequence of k pos ...
- 大学C++程序设计教程期末复习重点
第一章 1.cin与count的应用<iostream> 例: cin>>a; cout<<"hello"<<endl; cout& ...
- NFS网络文件系统详解
第1章 NFS基本概述 1.1 什么是nfs NFS是Network File System的缩写及网络文件系统. 主要功能是通过局域网络让不同的主机系统之间可以共享文件或目录. NFS系统和Wind ...
- (第02节)集成Sping框架
通过第一节创建好的Web项目,接下来就是集成Spring框架 首先让我们看下创建好的Web项目的基本结构 其中,Java跟test是我自己创的,然后就是一般的webapp文件,和pom配置文件,要在w ...
- linux命令之压缩与归档
1. gzip:压缩工具 语法·:gzip [选项](参数) 命令说明:运用广泛的压缩程序,文件经它压缩后,其名称后面以“.gz”扩展名 常用命令选项: -N:压缩文件后,保留文件的原文件名和时间 ...
- MYSQL 版本5.7.24 sql_mode=only_full_group_by问题
具体出错提示: [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggr ...
- JAVAOOP多线程
进程每个独立运行的任务对应一个进程,每个进程可以产生多个线程 特点:1,进程是系统运行程序的基本单位 2,每一个进程都有自己独立的一块内存空间,一组系统资源 3,每一个进程的内部数据和状态都是完全独立 ...