Jenkins自动化之路-Centos7 安装SonarQube8

SonarQube是代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速度,通过插件形式,可以支持Java、C、C++、JavaScripe等等二十几种编程语言的代码质量管理与检测,能对接jenkins等自动化工具。

SonarQube7.9后不支持mysql,因此采用postgresql

1.安装Java

1.1安装jdk11

#yum install -y java-11-openjdk java-11-openjdk-devel

 

1.2配置环境

#vim /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.5.10-0.el7_7.x86_64/

export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME/bin

 

 

2.安装postgresql

#yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm -y

#yum install postgresql10-contrib postgresql10-server -y

#/usr/pgsql-10/bin/postgresql-10-setup initdb

#systemctl start postgresql-10

#systemctl enable postgresql-10.service

 

3.登录postgresql并设置密码

# su - postgres

-bash-4.2$ psql

postgres=# create database sonar;

postgres=# create user sonar;

postgres=# alter user sonar with password 'sonar';

postgres=# alter role sonar createdb;

postgres=#alter role sonar superuser;

postgres=#alter role sonar createrole;

postgres=# alter database sonar owner to sonar;

postgres=# \q

-bash-4.2$ exit

 

4.安装SonarQube

4.1下载安装包

#wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.2.0.32929.zip

#unzip sonarqube-8.2.0.32929.zip

#mv sonarqube-8.2.0.32929 /usr/local/sonarqube-8.2

 

4.2配置SonarQube

#vi /usr/local/sonarqube-8.2/conf/sonar.properties

sonar.jdbc.username=sonar

sonar.jdbc.password=sonar

sonar.jdbc.url=jdbc:postgresql://localhost/sonar

sonar.jdbc.maxActive=60

sonar.jdbc.maxIdle=5

sonar.jdbc.minIdle=2

sonar.jdbc.maxWait=5000

sonar.jdbc.minEvictableIdleTimeMillis=600000

sonar.jdbc.timeBetweenEvictionRunsMillis=30000

sonar.jdbc.removeAbandoned=true

sonar.jdbc.removeAbandonedTimeout=60

 

5.安装sonar-scanner

5.1下载sonar-scanner安装包

#wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.2.0.1873-linux.zip

#unzip sonar-scanner-cli-4.2.0.1873-linux.zip

#mv sonar-scanner-4.2.0.1873-linux/ /usr/local/sonar-scanner-4.2

 

5.2配置

#vi /usr/local/sonar-scanner-4.2/conf/sonar-scanner.properties

sonar.host.url=http://localhost:9000

 

6. 配置sonar账号

6.1账号添加

#adduser sonar -s /sbin/nologin

#chown -R sonar:sonar /usr/local/sonar-scanner-4.2

#chown -R sonar:sonar /usr/local/sonarqube-8.2

 

6.2配置环境变量

#vi /etc/profile

export SONAR_HOME=/usr/local/sonarqube-8.2

export SONAR_RUNNER_HOME=/usr/local/sonar-scanner-4.2

export PATH=$PATH:$SONAR_RUNNER_HOME/bin

export PATH=$PATH:$SONAR_HOME/bin

#source /etc/profile

 

7.启动服务

6.1关闭防火墙

#systemctl disable firewalld

 

7.2设置服务

#vi /etc/systemd/system/sonar.service

[Unit]

Description=SonarQube Server

After=syslog.target network.target

[Service]

Type=forking

ExecStart=/usr/local/sonarqube-8.2/bin/linux-x86-64/sonar.sh start

ExecStop= /usr/local/sonarqube-8.2/bin/linux-x86-64/sonar.sh stop

LimitNOFILE=65536

LimitNPROC=4096

User=sonar

Group=sonar

Restart=on-failure

[Install]

WantedBy=multi-user.target

 

#systemctl restart sonar.service

#systemctl enable sonar.service

 

7.3web访问

http://IP:9000

username:admin

password: admin

 

8.关于启动报错

app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 143

这个报错一般是数据库连接问题,请查看/usr/local/sonarqube-8.2/logs/web.log

 

app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 1

这个报错一般是es不能使用root启动原因导致

 

Caused by: org.postgresql.util.PSQLException: ERROR: no schema has been selected to create in

是因为没权限,要注意授权

 

java.lang.IllegalStateException: Fail to connect to database

无法连接数据库,注意IP地址

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值