能运行在JDK8和MySQL环境下的最高sonarqube版本是7.8,版本在7.9以上的都要安装jdk11和PostgreSQL了。
下载
到https://www.sonarqube.org/downloads/网站下载历史版本7.8的zip压缩包,
配置
数据库链接
打开sonar目录的/conf/sonar.properties文件,找到并配置:
# User credentials. # Permissions to create tables, indices and triggers must be granted to JDBC user. # The schema must be created first. sonar.jdbc.username= sonar.jdbc.password= #----- Embedded Database (default) # H2 embedded database server listening port, defaults to 9092 #sonar.embeddedDatabase.port=9092 #----- DEPRECATED #----- MySQL >=5.6 && <8.0 # Support of MySQL is dropped in Data Center Editions and deprecated in all other editions # Only InnoDB storage engine is supported (not myISAM). # Only the bundled driver is supported. It can not be changed. sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
请在启动前提前创建好对应的数据库。
创建用户 Sonarqube并设为启动账户
# 创建用户 useradd sonar # 配置密码 passwd sonar # 将目录权限给予该用户 chown -R sonar:sonar /home/sonarqube-7.8
编辑sonar安装目录的/bin/linux-x86-64/sonar.sh文件,修改用户为sonar
# If specified, the Wrapper will be run as the specified user. # IMPORTANT - Make sure that the user has the required privileges to write # the PID file and wrapper.log files. Failure to be able to write the log # file will cause the Wrapper to exit without any way to write out an error # message. # NOTE - This will set the user which is used to run the Wrapper as well as # the JVM and is not useful in situations where a privileged resource or # port needs to be allocated prior to the user being changed. RUN_AS_USER=sonar
启动Sonarqube
直接执行 /home/sonarqube-7.8/bin/linux-x86-64/sonar.sh console 就可以启动 Sonarqube ,并且直观的看到启动日志,建议调试期间使用该命令启动。
等调试结束,启动完全没问题了,就可以使用 ./sonar.sh console & 来实现后台运行,或者直接 ./sonar.sh start 来快速启动。
查看日志
Sonarqube 的日志目录位于 /home/sonarqube-7.8/log/ 目录,分别有:
- access.log 访问权限相关日志
- ce.log 不知道啥日志,应该没用
- sonar.log 主体日志,使用 console 命令启动输出的日志来自该文件
- es.log 依赖的 Elasticsearch 启动时输出的日志
- web.log 主体 Web 项目输出的日志
在配置 Sonarqube 时,集中关注 es.log 和 web.log 即可。
sonarQube安装中文插件
访问中文插件的网址并查看对应sonar版本的中文插件版本:https://github.com/xuhuisheng/sonar-l10n-zh
对应sonar7.8的是这个链接:https://github.com/xuhuisheng/sonar-l10n-zh/releases/tag/sonar-l10n-zh-plugin-1.28
下载对应的jar文件:
然后将jar包上传到自己sonar项目安装的extensions/plugins/下,并重启sonarqube即可。
其他
sonar的默认端口是9000,默认账号和密码是admin。