Skip to content

1.2

软件包及目录

[root@node-1 sonarqube]# pwd
/opt/sonarqube
# ll
总用量 552820
drwxr-xr-x  9 root root       136 3月  25 21:38 jdk-17.0.10
-rw-r--r--  1 root root 182487685 3月  25 21:37 jdk-17.0.10_linux-x64_bin.tar.gz
drwxrwxrwx  6 1107 1107       294 9月  22 2020 postgresql-13.0
-rw-r--r--  1 root root  27439127 3月  25 21:37 postgresql-13.0.tar.gz
-rw-r--r--  1 root root     70457 3月  25 21:37 sonar-l10n-zh-plugin-9.9.jar
-rw-r--r--  1 root root  13174250 3月  25 21:37 sonar-pdfreport-plugin-4.0.1.jar
drwxr-xr-x 11 root root       172 2月   6 14:27 sonarqube-9.9.4.87374
-rw-r--r--  1 root root 294636324 3月  25 22:02 sonarqube-9.9.4.87374.zip
drwxr-xr-x  6 root root        51 8月   4 2023 sonar-scanner-5.0.1.3006-linux
-rw-r--r--  1 root root  47123720 3月  25 21:37 sonar-scanner-cli-5.0.1.3006-linux.zip
-rw-r--r--  1 root root   1140061 3月  25 21:37 source.zip
[root@node-1 sonarqube]#

镜像下载地址

// postgresql ftp 镜像站
https://www.postgresql.org/ftp/source/

// JDK
https://www.oracle.com/java/technologies/downloads/#java17

// SonarQube
https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-9.9.4.87374.zip

// sonar-scanner
https://docs.sonarsource.com/sonarqube/10.2/analyzing-source-code/scanners/sonarscanner/

// sonar-pdf-reporter
https://gitee.com/zzulj/sonar-pdf-plugin/releases

// sonar-l10n-zh-plugin
https://github.com/xuhuisheng/sonar-l10n-zh/releases

安装步骤

系统配置

// 文件末尾添加
# cat /etc/security/limits.conf
# End of file

*       soft    nofile      655360
*       hard    nofile      655360

# cat /etc/sysctl.conf
vm.max_map_count=262144

# sysctl -p

// 创建sonarqube、postgres用户
# useradd sonar
# useradd postgres


// 安装gcc编译相关
# yum -y install gcc*

JDK安装配置

// 如下文件末尾添加配置JDK
# cat /etc/profile

export JAVA_HOME=/opt/jdk-17.0.10
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin

// 生成jre
# cd jdk-17.0.10/
# ls
bin  conf  include  jmods  legal  lib  LICENSE  man  README  release
# bin/jlink --module-path jmods --add-modules java.desktop --output jre

# source /etc/profile
# java -version
java version "17.0.10" 2024-01-16 LTS
Java(TM) SE Runtime Environment (build 17.0.10+11-LTS-240)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.10+11-LTS-240, mixed mode, sharing)

PGSQL安装配置

// postgresql ftp 镜像站
https://www.postgresql.org/ftp/source/
# mkdir -p /opt/postgresql-13.0
# mkdir -p /opt/postgresql-13.0/data
# chown -R postgres /opt/postgresql-13.0
# chown -R postgres /opt/postgresql-13.0/data
# touch /opt/postgresql-13.0/pgsql.log
# chown -R postgres /opt/postgresql-13.0/pgsql.log

# ./configure --prefix=/opt/postgresql-13.0  --without-readline --without-zlib
# make && make install

# chown -R postgres /opt/postgresql-13.0
// 这里需要切换到postgres用户下执行下面命令(不支持root下运行)
su - postgres
cd /opt/postgresql-13.0/bin
./initdb -D /opt/postgresql-13.0/data

// 启动
./pg_ctl -D /opt/postgresql-13.0/data -l /opt/postgresql-13.0/pgsql.log start
// 为了方便后面的操作postgres命令,我们切换到root用户下配置一下环境变量
su - root
echo 'export PGHOME=/opt/postgresql-13.0/data' >> /etc/profile
echo 'export PGDATA=$PGHOME/data' >> /etc/profile
echo 'export PATH=$PATH:$PGHOME/bin' >> /etc/profile
source /etc/profile
// 换到postgres用户下,执行postgres的命令看看
// 查询postgres服务状态
$ pg_ctl status

// 启动postgres服务
$ pg_ctl start

// 重启postgres服务
$ pg_ctl restart

// 停止postgres服务
$ pg_ctl stop
登录数据库不指定用户,默认是以postgres登录postgres数据库
psql

创建数据库用户
create user sonaruser password  'sonar123456.';     创建数据库用户jamy,密码为123456

创建数据库
create database test  owner  sonaruser;     //指定数据库所属者为jamy用户
create database sonarqube owner  sonaruser; //必须创建这个数据库不然启动会报错

登录指定用户和数据库登录
psql -U sonaruser -W sonarqube

给数据库授权
grant all privileges on database sonarqube to sonaruser;

查看数据库列表
\l

切换数据库
\c      //切换到test数据库   \c test;

退出数据库用户
\q 或者 exit 或者quit

查看数据库用户权限列表
\du

删除数据库
# DROP DATABASE IF EXISTS sonarqube;
DROP DATABASE

删除用户
# DROP USER IF EXISTS soanruser;
// 客户端登陆需要修改两个配置文件
cd /opt/postgresql-13.0/data
vim postgresql.conf
将listen_addresses = ‘localhost’ 改成  listen_addresses = '*'

vim  pg_hba.conf
在# IPv4 local connections:下面添加如下内容
host    all             all             0.0.0.0/0               password

// 重启postgres
pg_ctl restart

安装配置sonarqube

# pwd
/opt/sonarqube-9.9.4.87374
将下载的中文汉化和pdf插件复制到extensions/plugins/

# chown -R sonar *
# cat conf/sonar.properties
sonar.jdbc.username=sonaruser
sonar.jdbc.password=sonar123456.
sonar.jdbc.url=jdbc:postgresql://192.168.X.93:5432/sonarqube?currentSchema=public
// 

# su - sonar
$ bin/linux-x86-64/sonar.sh restart
/opt/jdk-17.0.10/bin/java
Gracefully stopping SonarQube...
Stopped SonarQube.
Starting SonarQube...
Removed stale pid file: ./SonarQube.pid
Failed to start SonarQube.

$ bin/linux-x86-64/sonar.sh stop
$ bin/linux-x86-64/sonar.sh start
http://{{Ip}}:9000
admin/admin     // default password
admin/123