1、准备

SonarQube版本:sonarqube-7.9.1.zip,官网地址:https://www.sonarqube.org/downloads/

jdk版本:jdk-11.0.4_linux-x64_bin.tar.gz(sonarqube从7.9起,不再支持jdk11以下版本)

数据库:PostgreSQL 10.10(sonarqube从7.8起,不再支持mysql)(功能验证也可以SonarQube内置的数据库,这样就不需要改数据库配置)

2、安装PostgreSQL

详见:CentOS安装PostgreSQL

3、安装JDK

tar -zxvf /var/ftp/pub/jdk-11.0.4_linux-x64_bin.tar.gz    // 解压安装包
ln -s /usr/local/jdk-11.0.4/bin/java /usr/bin/ // 创建软连接

也可以不用创建软连接,直接修改$SONARQUBE_HOME/conf/wrapper.conf文件中的wrapper.java.command参数,指定java命令行位置

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

4、解压SonarQube

yum install -y zip unzip                    // 安装解压工具
unzip /var/ftp/pub/sonarqube-7.9.1.zip // 解压安装包

5、修改 $SONARQUBE_HOME/conf/sonar.properties 文件,更改数据连接配置

sonar.jdbc.username=test_user
sonar.jdbc.password=abc123 sonar.jdbc.url=jdbc:postgresql://localhost:5432/test_db

如果SonarQube与PostgreSQL在同一台主机,请将PostgreSQL的访问策略文件pg_hba.conf的配置项目127.0.0/32的密码策略有ident该为password或md5,详见:PostgreSQL的pg_hba.conf文件讲解

6、创建SonarQube启动用户(SonarQube内置了elasticsearch,elasticsearch不允许使用root用户启动)

useradd sonarqube
passwd sonarqube

7、设置系统参数(elasticsearch启动需要设置一些参数)

详细见:elasticsearch启动常见错误

未设置这些参数在$SONARQUBE_HOME/logs/es.log中出现以下错误:

8、赋予启动用户执行权限

chown -R sonarqube:sonarqube /usr/local/sonarqube-7.9.1/

9、登陆启动用户,启动程序

su - sonarqube                                             // 以sonarqube用户登陆
cd /usr/local/sonarqube-7.9.1/bin/linux-x86-64 // 进入启动命令目录
./sonar.sh start // 启动程序

10、登陆http://192.168.107.136:9000访问,默认用户名/密码为:admin/admin

11、创建服务并设置启动方式

这个部分验证失败,先放着这里,以后再处理。sonarqube自带的elasticsearch不允许root用户启动,但修改$SONARQUBE/bin/linux-x86-64/sonar.sh中的RUN_AS_USER配置项无效。

在/etc/init.d/目录创建文件sonar,内容如下:

#!/bin/sh
#
# rc file for SonarQube
#
# chkconfig: 345 96 10
# description: SonarQube system (www.sonarsource.org)
#
### BEGIN INIT INFO
# Provides: sonar
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: SonarQube system (www.sonarsource.org)
# Description: SonarQube system (www.sonarsource.org)
### END INIT INFO /usr/bin/sonar $*

创建软连接和设置执行权限

ln -s /usr/local/sonarqube-7.9.1/bin/linux-x86-64/sonar.sh /usr/bin/sonar  // 创建软件连接
chmod 755 /etc/init.d/sonar // 添加执行权限

常用命令:

service sonar start     // 启动服务
service sonar stop // 关闭服务
service sonar restart // 重启服务 chkconfig sonar on // 设置开机启动
chkconfig sonar off // 关闭开机启动

官网说明:https://docs.sonarqube.org/7.9/setup/operate-server/

CentOS安装SonarQube7.9.1的更多相关文章

  1. CentOS安装gitlab,gerrit,jenkins并配置ci流程

    CentOS安装gitlab,gerrit,jenkins并配置ci流程 By Wenbin juandx@163.com 2016/4/9 这是我参考了网上很多的文档,配置了这三个软件在一个机器上, ...

  2. 【推荐】CentOS安装Subversion-1.8.11+HTTP协议支持配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 我们需要搭建一个自己的SVN服务器. 此外,搭建好的SVN服务器除了需要支持svn协议外,最好还需要支持HTTP协议和HTTPS协 ...

  3. 【推荐】CentOS安装PHP-5.6.4+扩展安装+安全配置+性能配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 前段时间PHP官方发布了一个重要的安全升级公告,修复了两个unserialize函数的严重漏洞,目前受影响的版本有: ...

  4. CentOS安装Apache-2.4.10+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了各基础组件,并且配置了www用户和用户组,具体见<CentOS ...

  5. CentOS安装Nginx-1.6.2+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了pcre等基础组件,具体见<CentOS安装LNMP环境的基础 ...

  6. CentOS安装MySQL-5.6.10+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装MySQL之前,请确保已经使用yum安装了各类基础组件,具体见<CentOS安装LNMP环境的基础组件& ...

  7. 转: CentOS 安装 SVN1.8 客户端

     from: http://blog.csdn.net/clementad/article/details/46898091 CentOS 安装SVN客户端 标签: subversionrpmcent ...

  8. CentOS安装gitLab服务器

    首先利用gitlab-install-el6.sh安装,比较简单: (出处:http://www.linuxidc.com/Linux/2013-06/85754.htm) 1:如果有条件,提供一台全 ...

  9. 【推荐】CentOS安装Tomcat-7.0.57+启动配置+安全配置+性能配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Tomcat之前,请确保已经安装了JDK-1.7环境,具体见<CentOS安装JDK-1.7>. ...

随机推荐

  1. nginx 配置 server

    server{ listen 80; server_name test.eoews.cn; #项目文件的路径 root "D:/developer/study/PHPTutorial/WWW ...

  2. 纯C语言实现线性链表

    #include <stdio.h> #include <stdlib.h> typedef int ElemType; typedef struct LNode{ ElemT ...

  3. Qt for Android修改应用程序的图标和名称

    使用QT开发出的Android Apk安装后默认的图标是安卓的小机器人,下面介绍在QT5.12版本上修改APP名称和图标的方法. 1.  编译一次项目后,在编译目录下找到AndroidManifest ...

  4. lower_case_table_names和数据库在Linux和windows平台之间的相互迁移问题

    MySQL关于 lower_case_table_names 的文档 https://dev.mysql.com/doc/refman/5.7/en/identifier-case-sensitivi ...

  5. 基于开源博客系统(mblog)搭建网站

    基于开源博客系统(mblog)搭建网站 上一章讲了基于jpress部署的博客系统,这一章了解一下 mblog这个开源的基于springboot的博客系统,相比与jpress 的热度fork数量要少一些 ...

  6. python的multitask模块安装

    今天参考网络上的例子,编写基于python的网络程序,遇到下面的错误. No module named 'multitask' 但是multitask的模块却始终下载不了,在网上找到的CSDN下载链接 ...

  7. GCN总结

    一.GCN简介 GNN模型主要研究图节点的表示(Graph Embedding),图边结构预测任务和图的分类问题,后两个任务也是基于Graph Embedding展开的.目前论文重点研究网络的可扩展性 ...

  8. 显卡,显卡驱动,nvcc, cuda driver,cudatoolkit,cudnn到底是什么?

    在使用深度学习框架的过程中一定会经常碰到这些东西,虽然anaconda有时会帮助我们自动地解决这些设置,但是有些特殊的库却还是需要我们手动配置环境,但是我对标题上的这些名词其实并不十分清楚,所以老是被 ...

  9. django orm 基于双下划线的跨表查询

    一..基于双下划线的跨表查询(join实现) key:正向查询按字段,反向查询按表明小写 1.一对多跨表查询 查询在跨表中可以有两种方式,正向查询就是关键字段在你要搜索的表,没有关键字段就是反向查询 ...

  10. LOJ 2085: 洛谷 P1587: bzoj 4652: 「NOI2016」循环之美

    题目传送门:LOJ #2085. 两个月之前做的傻题,还是有必要补一下博客. 题意简述: 求分子为不超过 \(n\) 的正整数,分母为不超过 \(m\) 的正整数的所有互不相等的分数中,有多少在 \( ...