简介
SonarQube 是一个开源的代码质量管理系统。
功能介绍:
Java、JavaScript、C#、TypeScript、Kotlin、Ruby、Go、Scala、Flex、Python、PHP、HTML、CSS、XML和VB.NET
支持平台
Java
SonarQube 仅支持 JVM 11,SonarQube scanners 支持 JVM 8 或 11。
Database
注意:SonarQube 7.9+ 已经不再支持 MySQL。
Web Browser
验证环境
操作系统:macOS Catalina 版本 10.15.2
SonarQube:8.2.0
Oracle JDK:11
postgreSQL:12.2
操作系统参数设置
SonarQube 使用 Elasticsearch 做全文搜索,所以需要设置如下:
# 实时设置$ sysctl vm.max_map_count$ sysctl fs.file-max$ ulimit -n$ ulimit -u# 永久生效$ echo "sonarqube - nofile 65536sonarqube - nproc 4096" > /etc/security/limits.d/99-sonarqube.conf
zip 方式安装
安装 postgreSQL
macOS
# 下载# 官方下载地址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads$ wget https://get.enterprisedb.com/postgresql/postgresql-12.2-1-osx.dmg# 双击安装即可# 验证$ ps -ef | grep postgres# 启动$ sudo -i -u postgres$ ./bin/pg_ctl -D /Library/PostgreSQL/12/data start# 停止$ ./bin/pg_ctl -D /Library/PostgreSQL/12/data stop
linux(Red Hat family)
# 安装 yum 源$ yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 安装客户端$ yum install -y postgresql12# 安装服务器端$ yum install -y postgresql12-server# 初始化数据库,并设置开机启动$ /usr/pgsql-12/bin/postgresql-12-setup initdb$ systemctl enable postgresql-12$ systemctl start postgresql-12# 验证$ systemctl status postgresql-12
创建 sonar 数据库
如下为 macOS 操作步骤,Linux 操作步骤一样。
$ sudo -i -u postgres$ psqlPassword for user postgres:psql (12.2)Type "help" for help.# 创建数据库postgres=# CREATE DATABASE sonar;CREATE DATABASE# 创建 sonar 用户postgres=# CREATE USER sonar WITH ENCRYPTED PASSWORD 'sonar';CREATE ROLE# 设置权限postgres=# GRANT ALL PRIVILEGES ON DATABASE sonar TO sonar;GRANT# 修改 sonar 数据库所属者为 sonarpostgres=# ALTER DATABASE sonar OWNER TO sonar;ALTER DATABASE# 查看数据库postgres=# l sonar List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges-------+-------+----------+-------------+-------------+------------------- sonar | sonar | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 | =Tc/sonar + | | | | | sonar=CTc/sonar(1 row)# 查看用户postgres=# du sonar List of roles Role name | Attributes | Member of-----------+------------+----------- sonar | | {}# 退出postgres=# q
安装 SonarQube
# 下载$ wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.2.0.32929.zip# 解压$ unzip sonarqube-8.2.0.32929.zip# 修改配置文件,设置数据库$ vi conf/sonar.propertiessonar.jdbc.username=sonarsonar.jdbc.password=sonarsonar.jdbc.url=jdbc:postgresql://localhost/sonar# 启动$ ./macosx-universal-64/sonar.sh start
docker 安装
下载镜像
# 下载$ docker pull postgres$ docker pull sonarqube# 查看镜像$ docker images
创建 络
$ docker network create sonar-network# 查看 络$ docker inspect sonar-network
启动 postgres
# 启动$ docker run --name sonar-postgres -d -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -p 5432:5432 --net sonar-network postgres# 查看容器$ docker ps# 查看启动 log$ docker logs -f postgres
启动 sonarqube
# 启动$ docker run --name sonarqube -d -p 9000:9000 -e SONARQUBE_JDBC_USERNAME=sonar -e SONARQUBE_JDBC_PASSWORD=sonar -e SONARQUBE_JDBC_URL=jdbc:postgresql://sonar-postgres:5432/sonar --net sonar-network sonarqube# 查看容器$ docker ps# 查看启动 log$ docker logs -f sonarqube
访问 SonarQube
启动成功后,通过 http://localhost:9000 进行访问。
默认用户名/密码:admin / admin。
下载中文插件
在线安装中文插件,重启。
注意: 离线安装只需要下载 jar 放到 extensions/plugins 目录下,重启即可。
其他常用插件
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!