sonarqube安装及使用(centos7)

1. sonarqube环境要求

在这里插入图片描述
在这里插入图片描述

网址在这里: https://docs.sonarqube.org/display/SONARQUBE67/Requirements

2. 配置jdk环境(1.8)

[root@localhost ~]# 
[root@localhost ~]# tar -zxf jdk-8u201-linux-x64.tar.gz 
[root@localhost ~]# mv jdk1.8.0_201/ /usr/local/java
[root@localhost ~]# vim /etc/profile 尾部添加
export JAVA_HOME=/usr/local/java
export JRE_HOME=/usr/local/java/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

[root@localhost ~]# rm -rf /usr/bin/java
[root@localhost ~]# source /etc/profile
[root@localhost ~]# ln -s /usr/local/java/bin/java /usr/bin
[root@localhost ~]# java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

3. 安装mysql 5.6

   15  rpm -qa | grep mariadb
   11  wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
   13  rpm -ivh mysql-community-release-el7-5.noarch.rpm 
   16  yum -y install mysql-server mysql-devel mysql
   18  systemctl start mysqld
   20  mysqladmin -uroot password
   28  mysql -uroot -p123456

mysql> create database sonar default charset utf8;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on sonar.* to 'sonar'@'192.168.20.%' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

4. 系统设置(根据sonar官网来设定)

在这里插入图片描述
上边的框框是查看,下边的框框是设置

查看参数
[root@localhost ~]# sysctl vm.max_map_count
vm.max_map_count = 65530
[root@localhost ~]# sysctl fs.file-max #此项已经达到要求,待会不设置了
fs.file-max = 180998
[root@localhost ~]# ulimit -n
1024
[root@localhost ~]# ulimit -u
7178



sysctl -w fs.file-max=65536 #不执行了
sysctl -w vm.max_map_count=262144
ulimit -n 65536
ulimit -u 2048

5. 安装sonarqube

添加用户:sonarqube不能用root用户启动
[root@localhost ~]# useradd sonar
[root@localhost ~]# unzip sonarqube-6.7.5.zip 
[root@localhost ~]# mv sonarqube-6.7.5 /usr/local/sonarqube
[root@localhost ~]# tree -L 1 /usr/local/sonarqube/
/usr/local/sonarqube/
├── bin
├── conf
├── COPYING
├── data
├── elasticsearch
├── extensions
├── lib
├── logs
├── temp
└── web

9 directories, 1 file

启动脚本命令在这里
[root@localhost ~]# ls /usr/local/sonarqube/bin/linux-x86-64/
lib  sonar.sh  wrapper

修改sonar配置文件
[root@localhost ~]# vim /usr/local/sonarqube/conf/sonar.properties  
 16 sonar.jdbc.username=sonar #取消注释并修改
 17 sonar.jdbc.password=123456 #取消注释并修改
 26 sonar.jdbc.url=jdbc:mysql://192.168.20.126:3306/sonar?useUnicode=true&characterEncoding=    utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
 26行是取消注释 3306后边的那个sonar是sonar库的意思
105 sonar.web.host=192.168.20.126 #取消注释并修改
111 sonar.web.port=9000 #取消注释

启动sonarqube
[root@localhost ~]# chown -R sonar:sonar /usr/local/sonarqube/
[root@localhost ~]# su sonar
[sonar@localhost root]$ cd /usr/local/sonarqube/bin/linux-x86-64/
[sonar@localhost linux-x86-64]$ ./sonar.sh #用法
Usage: ./sonar.sh { console | start | stop | restart | status | dump }
[sonar@localhost linux-x86-64]$ ./sonar.sh start
Starting SonarQube...
Started SonarQube.
[sonar@localhost sonarqube]$ ss -ntpl | grep 9000
LISTEN     0      25       ::ffff:192.168.20.126:9000                    :::*                   users:(("java",pid=4813,fd=116))

6. 登陆及汉化

1)登陆

访问本机ip的9000端口即可
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认账号和密码是admin和admin

2)汉化

登陆之后点击administration

在这里插入图片描述
在这里插入图片描述
安装完之后看页面上边

在这里插入图片描述
之后再次登陆就更新了
在这里插入图片描述

7. scanner的安装及简单使用

scanner下载地址: https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/

[root@localhost ~]# unzip sonar-scanner-cli-4.0.0.1744-linux.zip 
[root@localhost ~]# mv sonar-scanner-4.0.0.1744-linux/ /usr/local/sonar-scanner
[root@localhost ~]# chown -R sonar:sonar /usr/local/sonar-scanner/
[root@localhost ~]# vim /usr/local/sonar-scanner/conf/sonar-scanner.properties 
  5 sonar.host.url=http://192.168.20.126:9000 #取消注释并修改
  8 sonar.sourceEncoding=UTF-8 #取消注释

[root@localhost ~]# vim /etc/profile #尾部添加
export SONAR_HOME=/usr/local/sonar-scanner/
export PATH=$PATH:$SONAR_HOME/bin
[root@localhost ~]# source /etc/profile

测试一下scanner命令是否可用,随便打一个命令试一下 如下可以看出命令可以用
[root@localhost ~]# sonar-scanner -x
ERROR: Unrecognized option: -x
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
[root@localhost ~]# mkdir code
[root@localhost ~]# cd code/
[root@localhost code]# pwd
/root/code
[root@localhost code]# vim sonar-project.properties
sonar.projectKey=test-project
sonar.projectName=cloud
sonar.projectVersion=1.0
sonar.sources=.
sonar.language=py
sonar.sourceEncoding=UTF-8
[root@localhost code]# vim test.py
print("hello world")
[root@localhost code]# sonar-scanner -X
[root@localhost code]# sonar-scanner -X
21:58:44.971 INFO: Scanner configuration file: /usr/local/sonar-scanner/conf/sonar-scanner.properties
21:58:44.977 INFO: Project root configuration file: /root/code/sonar-project.properties
21:58:45.022 INFO: SonarQube Scanner 4.0.0.1744
21:58:45.023 INFO: Java 11.0.3 AdoptOpenJDK (64-bit)
21:58:45.023 INFO: Linux 3.10.0-693.el7.x86_64 amd64
21:58:45.386 DEBUG: keyStore is : 
21:58:45.386 DEBUG: keyStore type is : pkcs12
······
21:58:58.245 INFO: Note that you will be able to access the updated dashboard once the server has processed the submitted analysis report
21:58:58.245 INFO: More about the report processing at http://192.168.20.126:9000/api/ce/task?id=AWvcLh04RqppKbgeacRS
21:58:58.246 DEBUG: Report metadata written to /root/code/.scannerwork/report-task.txt
21:58:58.250 DEBUG: Post-jobs : 
21:58:58.259 INFO: Task total time: 8.862 s
21:58:58.470 INFO: ------------------------------------------------------------------------
21:58:58.470 INFO: EXECUTION SUCCESS
21:58:58.470 INFO: ------------------------------------------------------------------------
21:58:58.470 INFO: Total time: 13.537s
21:58:58.570 INFO: Final Memory: 7M/24M
21:58:58.570 INFO: ------------------------------------------------------------------------

代码扫描完毕,登陆sonarqube首页可以查看扫描结果,如下图
在这里插入图片描述
在这里插入图片描述

原创文章 94 获赞 132 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_43557605/article/details/95231876
今日推荐