SonarQube 8.3安装

1,215 阅读2分钟

安装 Java

查看官方文档的 Requirements 可以看出 SonarQube 8.3 需要 Java 11 的支持才行:


  1. 通过链接 www.oracle.com/technetwork… 下载 Linux 的 .tar.gz 压缩包。yum install -y lrzsz安装文件上传下载工具,然后服务器上使用rz命令上传 Java 安装包。
  2. tar -zxvf jdk-11.0.7_linux-x64_bin.tar.gz解压文件
  3. vim /etc/profile配置 Java 环境变量,在文件最后添加一下内容:

    export JAVA_HOME=/root/jdk-11.0.7
    export PATH=${JAVA_HOME}/bin:$PATH

  4. source /etc/profile使配置生效,java --version查看 Java 环境是否配好

安装 PostgreSQL 10

为什么需要选择安装 PostgreSQL 10 可以参考官方文档的 Requirements Database 列表:


  1. 安装命令如下:

    yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
    yum install postgresql10
    yum install postgresql10-server
    /usr/pgsql-10/bin/postgresql-10-setup initdb
    systemctl enable postgresql-10
    systemctl start postgresql-10
     
  2. 查看是否安装成功psql -V
  3. 创建数据库和用户,并把数据库分配给该用户,并授予权限:

    # 登录postsql 
    su - postgres
    psql 
    # 创建数据库和用户,并把数据库分配给该用户,并授予权限
    create database sonar;
    create user sonar;
    alter user sonar with password 'sonar';
    alter role sonar createdb;
    alter role sonar superuser;
    alter role sonar createrole;
    alter database sonar owner to sonar;
    # 退出
    \q
    exit

  4. 修改配置文件/var/lib/pgsql/10/data/pg_hba.conf,将 ident 全部改为 md5:
  5. 重启 PostgreSQL:systemctl restart postgresql-10

创建用户

下面引用官方的一段话说明为什么需要创建用户:

SonarQube cannot be run as root on Unix-based systems, so create a dedicated user account to use for SonarQube if necessary.

使用一下命令创建一个 sonar 用户:

groupadd sonar
useradd sonar -g sonar

优化参数

根据官方文档的提示,如果使用的是 Linux 服务器,需要调整一些参数:

使用以下命令调整参数即可:

sysctl -w  vm.max_map_count=262144
sysctl -w fs.file-max=65536
ulimit -u 4096 sonar
ulimit -n 65536 sonar

安装 SonarQube

  1. 下载后上传服务器,解压设置:

    yum install unzip
    unzip sonarqube-7.9.3.zip
    mkdir /opt/sonar
    mv sonarqube-7.9.3/* /opt/sonar/
    groupadd sonar
    useradd sonar -g sonar
    chown -R sonar.sonar /opt/sonar/

  2. 修改配置文件/opt/sonar/conf/sonar.properties

    sonar.jdbc.username=sonar 
    sonar.jdbc.password=sonar
    sonar.jdbc.url=jdbc:postgresql://localhost/sonar
    sonar.web.host=0.0.0.0
    

  3. 启动相关命令:

    # 启动
    su sonar /opt/sonar/bin/linux-x86-64/sonar.sh start
    
    # 查看状态
    su sonar /opt/sonar/bin/linux-x86-64/sonar.sh status
    
    # 停止
    su sonar /opt/sonar/bin/linux-x86-64/sonar.sh stop
    
    # 查看日志
    tail -f /opt/sonar/logs/sonar.log