SonarQube 安装指南

本文将详细介绍如何在 Linux 系统上安装和配置 SonarQube,包括 Java 环境配置、PostgreSQL 数据库安装、SonarQube 的安装与配置,以及如何通过 systemd 管理 SonarQube 服务。


1. 下载相关软件包

在安装 SonarQube 之前,需要准备以下软件包:

  • JDK 11:SonarQube 需要 JDK 11 或更高版本才能运行。
  • SonarQube:本文以 SonarQube 9.6.1 为例。
    兼容性列表

下载链接:


2. 配置 Java 环境

  1. 将 JDK 安装包解压到 /opt 目录:

    cd /opt
    tar -xf jdk-11.0.16.1_linux-x64_bin.tar.gz
    
  2. 创建软链接:

    ln -s jdk-11.0.16.1 jdk
    
  3. 配置环境变量:
    编辑 /etc/profile 文件,添加以下内容:

    export JAVA_HOME=/opt/jdk
    export PATH=$JAVA_HOME/bin:$PATH
    
  4. 使配置生效:

    source /etc/profile
    
  5. 验证 Java 版本:

    java -version
    

3. 安装和配置 PostgreSQL

SonarQube 需要使用 PostgreSQL 作为数据库。以下是安装和配置 PostgreSQL 的步骤:

  1. 添加 PostgreSQL 的 YUM 源:

    rpm -Uvh https://mirrors.aliyun.com/postgresql/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
    
  2. 修改 YUM 源为阿里云镜像:

    sed -i "s@https://download.postgresql.org/pub@https://mirrors.aliyun.com/postgresql@g" /etc/yum.repos.d/pgdg-redhat-all.repo
    
  3. 安装 PostgreSQL 13:

    yum install -y postgresql13-server
    
  4. 初始化数据库:

    /usr/pgsql-13/bin/postgresql-13-setup initdb
    
  5. 修改 PostgreSQL 配置文件:

    • 编辑 /var/lib/pgsql/13/data/postgresql.conf,修改监听地址:
      listen_addresses = '*'
      
    • 编辑 /var/lib/pgsql/13/data/pg_hba.conf,修改连接策略:
      host all all 0.0.0.0/0 password
      
  6. 启动并启用 PostgreSQL 服务:

    systemctl enable postgresql-13
    systemctl start postgresql-13
    
  7. 创建 SonarQube 用户和数据库:

    sudo -i -u postgres
    createuser sonarqube
    createdb sonarqube -O sonarqube
    

4. 安装和配置 SonarQube

  1. 解压 SonarQube 安装包:

    cd /opt
    unzip sonarqube-9.6.1.59531.zip
    
  2. 修改 SonarQube 配置文件:
    编辑 conf/sonar.properties,配置数据库连接:

    sonar.jdbc.url=jdbc:postgresql://localhost:5432/sonarqube
    sonar.jdbc.username=sonarqube
    sonar.jdbc.password=sonarqube
    
  3. 创建 SonarQube 用户:

    useradd sonarqube
    
  4. 配置系统参数:
    编辑 /etc/sysctl.conf,添加以下内容:

    vm.max_map_count=655350
    

    使配置生效:

    sysctl -p
    
  5. 配置 systemd 管理 SonarQube 服务:
    创建 /usr/lib/systemd/system/sonarqube.service 文件,内容如下:

    [Unit]
    Description=SonarQube service
    After=syslog.target network.target
    
    [Service]
    Type=simple
    User=sonarqube
    Group=sonarqube
    PermissionsStartOnly=true
    ExecStart=/bin/nohup /opt/jdk/bin/java -Xms32m -Xmx32m -Djava.net.preferIPv4Stack=true -jar /opt/sonarqube/lib/sonar-application-9.6.1.59531.jar
    StandardOutput=syslog
    LimitNOFILE=131072
    LimitNPROC=8192
    TimeoutStartSec=5
    Restart=always
    SuccessExitStatus=143
    
    [Install]
    WantedBy=multi-user.target
    
  6. 启动并启用 SonarQube 服务:

    systemctl daemon-reload
    systemctl start sonarqube
    systemctl enable sonarqube
    

5. SonarQube 汉化

  1. 下载汉化插件:

  2. 将插件放入 SonarQube 的插件目录:

    cp sonar-l10n-zh-plugin-*.jar /opt/sonarqube/extensions/plugins/
    
  3. 重启 SonarQube 服务:

    systemctl restart sonarqube
    

6. 访问 SonarQube

完成上述步骤后,可以通过浏览器访问 SonarQube:

  • 地址:http://<服务器IP>:9000
  • 默认用户名和密码:admin/admin

7. 总结

通过本文的步骤,你已经成功安装并配置了 SonarQube。SonarQube 是一个强大的代码质量管理工具,能够帮助开发团队持续改进代码质量。如果你在安装过程中遇到问题,欢迎在评论区留言讨论!


参考文档

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值