ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

ubuntu20.04 安装 sonarqube9.2 及 C++ 插件 sonar-cxx 静态代码检测(一)

2022-01-14 11:30:00  阅读:666  来源: 互联网

标签:ubuntu20.04 bin 插件 postgres cxx sonarqube sudo usr sonar


一、 Ubuntu20.04 安装 sonarqube9.2

1. 创建用户sonar

#useradd -r -m -s /bin/bash sonar
#passwd sonar

2. 系统环境配置

sudo vim /etc/sysctl.conf
# 添加如下内容
vm.max_map_count=262144
# 生效
sudo /sbin/sysctl -p
sudo vim /etc/security/limits.conf
# 添加下面配置
* soft nofile 65536
* hard nofile 131071
* soft nproc 65536
* hard nproc 65536

3. 安装JAVA 虚拟机 和数据库 postgresql
Prerequisites and Overview | SonarQube Docs  查看 sonarqube9.2 依赖哪些包

这里选择安装openjdk11 和PostgreSQL12 

3.1 安装openjdk11
从官网下载jdk-11.0.13_linux-x64_bin.tar.gz 并解压至/usr/local目录下
在 /home/sonar/.bashrc 末尾添加 以下环境变量

​​​​​​​export JAVA_HOME=/usr/local/jdk-11.0.13
export CLASSPATH=.:${JAVA_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH  

配置 /etc/environment 将/usr/local/jdk-11.0.13/bin 添加进PATH 

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/jdk-11.0.13/bin"

重新登陆 控制台  查看java版本

#java -version
​​​​​​​java version "11.0.13" 2021-10-19 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.13+10-LTS-370)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.13+10-LTS-370, mixed mode)

3.2 安装  PostgreSQL12 

#sudo apt-get install postgresql-12

创建 用户名 postgres 及数据库 testdbpost ,密码为123456

sudo -u postgres psql
postgres=#alter user postgres with password '123456';
postgres=#create database testdbpost owner postgres;
postgres=#grant all privileges on database testdbpost to postgres;
postgres=#\q

修改 PostgreSQL12  的配置 

#sudo vim /etc/postgresql/12/main/postgresql.conf   
listen_addresses = '*'
password_encryption = scram-sha-256             # md5 or scram-sha-256

#sudo vim /etc/postgresql/12/main/pg_hba.conf
host    all             all             127.0.0.1/32            scram-sha-256
host    all             all             0.0.0.0/0               scram-sha-256

PostgreSQL12  服务重启

​​​​​​​sudo systemctl restart postgresql.service

现在可以远程登陆 PostgreSQL12 

#psql -U 用户名   -h 主机地址
#psql -U postgres -h 192.168.10.248

4. 安装 Sonarqube
4.1  下载 sonarqube-9.2.4.50792.zip 并解压 ​​​​​​​
 从  https://binaries.sonarsource.com/Distribution/sonarqube/ 下载sonarqube-9.2.4.50792.zip

从root用户切换sonar
sudo su sonar
$cd /home/sonar
$mkdir Sonarqube
$cd Sonarqube
解压sonarqube-9.2.4.50792.zip 至sonar 的主目录
$unzip sonarqube-9.2.4.50792.zip

修改 conf/sonar.properties

# postgres 数据库的用户名 123456 密码
sonar.jdbc.username=postgres
sonar.jdbc.password=123456
#postgres 数据库的用户名
sonar.jdbc.url=jdbc:postgresql://localhost:5432/postgres
sonar.web.host=0.0.0.0

修改conf/wrapper.conf

wrapper.java.command=/usr/local/jdk-11.0.13/bin/java

启动   sonar
进入bin/linux-x86-64 目录 可在 ../../log/ 目录下看启动的日记
 

$./sonar.sh start

停止 sonar

$./sonar.sh stop

查看运行状态

$./sonar.sh status

在浏览器中输入火狐浏览器中输入 127.0.0.1:9000  登陆  sonarqube
也可以在windows 的浏览器中输入 虚拟机的IP:9000 登陆 sonarqube
用户名 密码 默认是 admin admin
第一登陆需要更新密码

也可以创建服务让sonarqube 开机启动 
 创建 文件  /lib/systemd/system/sonar.service

[Unit]
Description=SonarQube service
After=syslog.target network.target
 
[Service]
Type=forking
 
ExecStart=/home/sonar/Sonarqube/sonarqube-9.2.4.50792/bin/linux-x86-64/sonar.sh start
ExecStop=/home/sonar/Sonarqube/sonarqube-9.2.4.50792/bin/linux-x86-64/sonar.sh stop
 
User=sonar
Group=sonar
Restart=always
 
LimitNOFILE=65536
LimitNPROC=4096
 
[Install]
WantedBy=multi-user.target

设置开机启动

systemctl enable sonar

开启服务

systemctl restart sonar

 

5. 安装中文插件

Releases · xuhuisheng/sonar-l10n-zh · GitHub 下载sonar-l10n-zh-plugin-9.2.jar
并将 sonar-l10n-zh-plugin-9.2.jar 放置  extensions/plugins 目录下 ,然后重启服务 即可看到漂亮的中文界面.
注意:有些浏览器默认是英文,需要改为中文才可以浏览. Ubuntu 火狐浏览器按以下步骤更改

重启浏览器器,重新登陆 sonarqube 即可以看到中文界面了


 

 

标签:ubuntu20.04,bin,插件,postgres,cxx,sonarqube,sudo,usr,sonar
来源: https://blog.csdn.net/du2005023029/article/details/122489099

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有