前言
因为公司有代码扫描的需求,做测试前移,所以不可避免的就要找代码扫描的工具,sonarqube 以前就听过,这回就用用吧。
sonar 结构
我认为有必要知道的,就下面两块儿
SonarQube Server
SonarQube Scanner
流程就是 scanner 扫描代码,然后将结果传至 server 端,sonar 平台有展示部分。
当然,server 端不光有展示的功能,其实代码质量的跟踪也在里面,只不过用不用的上,能不能用起来就看团队了。
sonar server 下载&&安装
1)sonar server 下载
到官网进行下载,下载之后就是 sonarqube-8.2.0.32929.zip 这种的 zip 包,后面的版本号随版本变化
2)sonar server 安装
其实安装挺简单,解压启动即可,但是会牵连出来几个问题,下面会说。
# 启动,console是控制台启动,start是后台启动
# ./sonar.sh start
./sonar.sh console
# 登录,地址http://xxx.xxx.xxx.xxx:9000,默认用户名密码:admin/admin
其实我的建议,像这些安装文档之类的,最好跟着官网走,因为博客上这些,等官网更新,可能安装方法就变了,博客一般写出来之后很长时间就不维护了。
官网上相关安装就几句话
这种的相当于简易安装,数据库用的是内置的 h2,如果你这个时间打开网址,会提示你不建议将之用于实际环境。这个时候就引出了下面的问题,数据库。
官网还有 docker 的安装方式,那个就更简单了。
3)数据库安装
为什么我说要看官网,如果这个时候去找博客,会发现很多都是用的 MySQL 数据库,但是!你会发现你去官网上看相关的支持信息,就没 MySQL 数据库的支持了,我说的是新的。
看到 database 这里面,只有如下三种,oracle 的版本没截全,下面还有,等大家安装的时候可以去看。
我想用个免费的,就选了 PostgreSQL,记住看支持的版本,我当时 CentOS7 用 yum 进行安装,安装的是 9.2 的,但是官网新版支持 9.x 的是 9.3-9.6。等安装的时候记得去看这些信息。
PostgreSQL 的安装我会单独写一篇,就不在这里面写了,下面写的是 sonar 要怎么跟 PostgreSQL 对接。
# 创建数据库
create database sonarqube;
# 创建用户
# CREATE USER sonarqube CREATEDB LOGIN PASSWORD 'sonarqube'
create user sonarqube;
alter user sonarqube with password 'sonarqube';
# 分配权限
GRANT ALL ON DATABASE sonarqube TO sonarqube
# 修改sonar配置文件
vi /home/sonarqube/sonarqube-8.2.0.32929/conf/sonar.properties
# 将以下几项修改
sonar.jdbc.username=sonarqube
sonar.jdbc.password=sonarqube
# 下面这个找postgresql的进行修改
sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube
汉化
注意事项
因为 server 内置了 Elasticsearch,所以 Elasticsearch 需要怎么改配置,我们这个 server 端也需要,要不然会报些 Elasticsearch 常见错误,随便搜索下也能解决。
其实这些东西官网上的 requirements 都写有,包括硬件配置、jdk 版本、浏览器、Linux 参数要求,照着来就行了。
下篇预告
下一篇就准备写 scanner 了,写好之后会贴上链接。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于