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