• Centos7安装SonarQube7.9.3


    1. 简介

    SonarQube 是一个用于管理代码质量的开放平台,可以快速的定位代码中潜在的或者明显的错误。目前支持java,C#,C/C++,Python,PL/SQL,Cobol,JavaScrip,Groovy等二十几种编程语言的代码质量管理与检测。

    官网

    2. 环境

    Centos 7

    JDK 11

    PostgreSQL 10

    3. 创建用户

    # 创建sonar系统用户
    groupadd sonar
    useradd sonar -g sonar
    

    4. 优化参数

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

    5. 安装PostgreSQL10

    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
    

    创建数据库和用户,并把数据库分配给该用户,并授予权限

    # 登录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
    

    修改配置文件/var/lib/pgsql/10/data/pg_hba.conf,将ident全部改为md5

    改完重启postsql

    systemctl restart  postgresql-10
    

    6. 安装SonarQube

    版本是sonarqube-7.9.3

    1. 下载SonarQube

    下载地址

    解压sonar,并设置权限

    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/
    

    3. 修改配置文件

    vim /opt/sonar/conf/sonar.properties
    

    修改数据库相关的配置

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

    注意:sonar默认监听9000端口,如果9000端口被占用,需要更改。

    4. 启动SonarQube

    # 启动
    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
    

    5. 常见错误

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

    这个报错一般是数据库连接问题,请查看sonar/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地址

    6. 参考

    Jenkins自动化之路-Centos7 安装SonarQube8

    Centos7安装部署SonarQube7.9.1教程

  • 相关阅读:
    linux 树型显示文件 tree ls tree 命令
    Linux常用命令大全
    My kingdom for a good timer! 规格严格
    org.dom4j.DocumentException: no protocol 规格严格
    利用GetObject("WinMgmts:")获取系统信息 规格严格
    给力URL 规格严格
    几个Servlet小Sample网站 规格严格
    使用SQL PLUS生成报表 规格严格
    High Resolution Timer in Java 5 规格严格
    GC调优文章精选:逐步添加 规格严格
  • 原文地址:https://www.cnblogs.com/ifme/p/12878653.html
Copyright © 2020-2023  润新知