Centos7部署SonarQube7.2

旧街凉风 提交于 2020-03-12 18:43:39

简介

  1. 官网
  2. 本文档安装的Sonar版本:7.2

下载安装

前置安装:

# jdk1.8
sudo yum install java-1.8.0-openjdk.x86_64
sudo yum install java-1.8.0-openjdk-devel

# unzip
sudo yum install unzip

SonarQube安装

# 创建用户
sudo useradd sonar -m -s /bin/bash
sudo passwd sonar

# 切换到创建的用户
su sonar

# 下载
wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.2.zip

# 解压
unzip sonarqube-7.2.zip

# 进入解压目录bin下对应的操作系统目录
cd sonarqube-7.2/bin/linux-x86-64/

sh sonar.sh console

# 后台启动(建议第一次使用console,以后用start):
# sh sonar.sh start

访问:http://ip:9000 查看是否启动成功,启动成功可以看到页面:

访问成功后可以停止后台进程,往下配置数据库信息。

配置数据库

笔者使用的数据库是MySQL5.7,数据库安装请参考Centos7部署MySQL5.7

创建数据库:

# 创建数据库用户
CREATE USER 'sonar'@'%' IDENTIFIED BY "sonar@1234";
CREATE USER 'sonar'@'localhost' IDENTIFIED BY "sonar@1234";
FLUSH PRIVILEGES;

# 创建schema
CREATE DATABASE sonar DEFAULT CHARACTER SET utf8;
GRANT ALL PRIVILEGES ON sonar.* TO sonar@'%';
GRANT ALL PRIVILEGES ON sonar.* TO sonar@'localhost';

进入目录 sonarqube-7.2/conf

# 修改配置文件
vi sonar.properties

# 修改以下参数
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar@123
sonar.jdbc.url=jdbc:mysql://{ip}:{prot}/sonar?useUnicode=true&characterEncoding=utf8&useSSL=false

# 配置完成后进入bin目录下启动sonarQube
sh sonar.sh start

配置扫描项目

使用admin/admin管理员用户登入 创建一个项目,输入项目名称后返回一个token。

选择开发语言,这里我用的是java+maven,右侧会提示使用方法

在项目目录下执行maven命令

mvn sonar:sonar \
  -Dsonar.host.url=http://{ip}:9000 \
  -Dsonar.login=admin \
  -Dsonar.password=admin

执行成功后到会显示扫描报告

跳转到SonarQube界面查看

简单的SonarQube的安装部署就到这里了。


采坑记录

高版本JDK问题

笔者最开始下载的事官网上的最新版本,8.2 SonarQube Community Edition,但是启动的时候报错如下:

因为本人的服务器jdk版本是jdk1.8,所以最后放弃了最新版本,降到7.2版本了

数据库配置报错

添加完数据库信息后启动报错,查看日志错误内容:

修改数据库连接配置,添加:

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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!