CentOS 8 安装 sonarqube 7.9.1 LTS

环境准备:

安装CentOS 8最小系统,配置网络,SSH.使能rpmfusion源,升级系统,安装依赖包,重启

# 使能rpmfusion源
[root@localhost ~]# dnf -y install --nogpgcheck \
    https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
[root@localhost ~]# dnf -y install --nogpgcheck \
    https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm \
    https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-8.noarch.rpm
# 更新系统
[root@localhost ~]# dnf -y upgrade 
# 安装常用软件包
[root@localhost ~]# dnf -y groupinstall "Development Tools"
[root@localhost ~]# dnf -y install net-tools vim telnet screen
# 重启系统
[root@localhost ~]# reboot

安装SonarQube需要的包

[root@localhost ~]# dnf -y install java-11-openjdk postgresql-server postgresql postgresql-contrib unzip

创建sonar用户

SonarQube不能使用root用户启动,需创建普通用户。

# 创建sonar用户
[root@localhost ~]# useradd sonar
# 设置sonar用户密码
[root@localhost ~]# passwd sonar
# 将sonar用户添加到sudoer中
[root@localhost ~]# echo "sonar  ALL=(ALL)  NOPASSWD: ALL" > /etc/sudoers.d/010-sonar-nopasswd
[root@localhost ~]# chmod a-wx /etc/sudoers.d/010-sonar-nopasswd

下载安装SonarQube

[root@localhost ~]# wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.9.1.zip
[root@localhost ~]# unzip -d /opt sonarqube-7.9.1.zip 
[root@localhost ~]# chown -R sonar:sonar /opt/sonarqube-7.9.1/

配置postgresql,创建sonar数据库

初始化postgresql数据库,使能postgrsql服务。

[root@localhost ~]# postgresql-setup initdb
[root@localhost ~]# systemctl enable postgresql
[root@localhost ~]# systemctl start postgresql

修改/var/lib/pgsql/data/pg_hba.conf,如下:



创建sonar用户和数据库, PostgreSQL安装完后会自动创建postgres用户,使用 su - postgres切换进去

#  进入命令行模式
[root@localhost ~]# su - postgres
[postgres@localhost ~]$ psql
# 创建sonar数据库
postgres=# create database sonar;
# 创建sonar用户
postgres=# create user sonar;
# 设置sonar用户密码(否则会导致连不上数据库)
postgres=# alter user sonar with password 'password';
# 给sonar授权
postgres=# alter role sonar createdb; alter role sonar superuser; alter role sonar createrole;
# 更改sonar数据库拥有者(这一步是必须的,否则会sonarqube会连接失败)
postgres=# alter database sonar owner to sonar; 

到这里数据库就搞完了!检查一下,结果应该是这样的, psql进入命令行模式 \l查看数据库 \du 查看用户


修改 SonarQube 的配置文件

在解压后的目录中,修改conf/sonar.properties文件,修改数据库相关配置



更改系统设置

修改/etc/sysctl.conf,在文件末尾加入如下配置
vm.max_map_count=262144
fs.file-max=65536
修改/etc/security/limits.conf,在文件末尾加入如下配置



修改完成后,重启系统生效。

修改防火墙设置

打开防火墙TCP 9000端口:

[root@localhost ~]# firewall-cmd --permanent --add-port=9000/tcp
[root@localhost ~]# firewall-cmd --reload

启动SonarQube

切换到sonar用户,切换到解压目录中的bin/linux-x86-64/,运行sonar.sh脚本

[root@localhost ~]# su - sonar
[sonar@localhost ~]$ cd /opt/sonarqube-7.9.1/bin/linux-x86-64/
[sonar@localhost linux-x86-64]$ ./sonar.sh start

登录SonarQube页面

使用浏览器访问 http://sonaqube-ip:9000 得到如下的登录页面,用户名和密码均为: admin

设置语言为中文

SonarQube安装完成后默认语言为英语,可以安装中文语言包将语言安装为中文。在SonarQube页面 Adminstration->Marketplace->Plugins中搜索chinese,找到中文语言包,安装,按照提示重启SonarQube服务器即可。



到此SonarQube安装就完成了,后面有时间再写使用SonarQube对C Project进行代码质量的分析和跟踪。

你可能感兴趣的:(CentOS 8 安装 sonarqube 7.9.1 LTS)