DevOps / SonarQube

SonarQube安装与汉化教程

浅时光 · 2月15日 · 2020年 53356次已读

1、安装相关工具


[root@sonarqube ~]# yum install -y epel-release unzip vim wget

2、安装JDK


  • 我这里直接下载的oracle jdk的rpm包进行安装的
  • 注意:运行sonarqube需要java11版本,我安装最新的13版本会报错
[root@sonarqube ~]# cd /opt/
[root@sonarqube opt]# rpm -ivh jdk-11.0.1_linux-x64_bin.rpm

3、安装数据库(PGS文章来源(Source):https://www.dqzboy.comQL)


3.1:添加 PostgreSQL 10 YUM 源

[root@sonarqube ~]# rpm -Uvh https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm

3.2:安装 PostgreSQL 10 Server

[root@sonarqube ~]# yum install -y postgresql10-server postgresql10

3.3:初始化 PGDATA

[root@sonarqube ~]# /usr/pgsql-10/bin/postgresql-10-setup initdb

3.4:编辑配置文件启动MD5验证

[root@sonarqube ~]# vim  /var/lib/pgsql/10/data/pg_hba.conf
1606118724 fa58b81ebad3576

3.5:如果postgreSQL server不在本机,还需要做以下操作

  • 1)默认情况下, PostgreSQL server 监听本机 ‘localhost’. 如果是远程连接PostgreSQL server,需要修改/var/lib/pgsql/10/data/postgresql.conf中的监听地址为
listen_addresses = '*'
  • 2)允许所有连接都是用 MD5 密码文章来源(Source):浅时光博客认证,在/var/lib/pgsql/10/data/pg_hba.conf的最后添加:
host all all 0.0.0.0/0 md5

3.6文章来源(Source):浅时光博客:放通端口

  • 如果开启了防火墙,还需要在防火墙上允许 TCP port 5432
[root@sonarqube ~]# firewall-cmd --permanent --zone=public --add-port=5432/tcp
[root@sonarqube ~]# firewall-cmd --reload

3.7:启动服务

[root@sonarqube ~]# systemctl start postgresql-10
[root@sonarqube ~]# systemctl enable postgresql-10
[root@sonarqube ~]# systemctl status postgresql-10
[root@sonarqube ~]# ss -tnlp |grep 5432

3.8:创建数据库

[root@sonarqube ~]# sudo -u postgres psql
CREATE DATABASE sonar;
CREATE USER sonar WITH ENCRYPTED PASSWORD '密码';
GRANT ALL PRIVILEGES ON DATABASE sonar TO sonar;
ALTER DATABASE sonar OWNER TO sonar;
\q
1606118785 6da2c477ab54c1c

4、部署SonarQube


4.1:下载程序包

[root@sonarqube ~]# wget -O /opt/sonarqube.zip https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.0.zip

4.2:解压至/usr/local

[root@sonarqube ~]# unzip /opt/sonarqube.zip -d /usr/local

4.3:重命名目录

[root@sonarqube ~]# mv /usr/local/sonarqube-8.0 /usr/local/sonarqube

4.4:为sonarqube添加用户

  • 使用root无法启动sonarqube
[root@sonarqube ~]# useradd sonar -s /sbin/nologin
[root@sonarqube ~]# id sonar
uid=1000(sonar) gid=1000(sonar) groups=1000(sonar)

4.5:修改目录权限

[root@sonarqube ~]# chown -R sonar. /usr/local/sonarqube/

4.6:修改配置

[root@sonarqube ~]# vim /usr/local/sonarqube/conf/sonar.properties
# 配置数据库,直接在pgsql上下文中添加如下参数
sonar.jdbc.username=sonar
sonar.jdbc.password=密码
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
1606118841 bcb077326cdbbb4
  • 配置web参数,在WEB SERVER的段中直接添加如下参数
sonar.web.host=127.0.0.1
sonar.web.port=9000
sonar.web.javaOpts=-server -Xms512m -Xmx512m -XX:+HeapDumpOnOutOfMemoryError
sonar.search.javaOpts=-server -Xms512m -Xmx512m -XX:+HeapDumpOnOutOfMemoryError
sonar.ce.javaOpts=-server -Xms512m -Xmx512m -XX:+HeapDumpOnOutOfMemoryError
1606118977 3c8abb52a140a4a

4.7:创建sonarqube启动脚本

[root@sonarqube ~]# vim /etc/systemd/system/sonar.service
[Unit]
Description=SonarQube Server
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/usr/local/sonarqube/bin/linux-x86-64/sonar.sh start
ExecStop=/usr/local/sonarqube/bin/linux-x86-64/sonar.sh stop
LimitNOFILE=65536
LimitNPROC=4096
User=sonar
Group=sonar
Restart=on-failure
[Install]
WantedBy=multi-user.target

4.8:增加ElasticSearch的虚拟内存

[root@sonarqube ~]# vim /etc/sysctl.d/00-sysctl.conf
vm.max_map_count = 262144
1606119021 8a95e1738cfdce5
  • 使配置生效
[root@sonarqube ~]# sysctl -p /etc/sysctl.d/00-sysctl.conf

4文章来源(Source):https://www.dqzboy.com.9:启动服务

[root@sonarqube ~]# systemctl daemon-reload
[root@sonarqube ~]# systemctl start sonar.service
[root@sonarqube ~]# systemctl enable sonar.service
[root@sonarqube ~]# systemctl status sonar.service
[root@sonarqube ~]# ss -tnlp | grep 9000

5、安装配置Nginx反向代理


5.1:安装Nginx

[root@sonarqube soft]# rpm -ivh nginx-1.16.1-1.el7.ngx.x86_64.rpm

5.2:修改配置

[root@sonarqube ~]# vim /etc/nginx/conf.d/default.conf
    location / {
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Ssl on;
        proxy_pass http://127.0.0.1:9000;
        proxy_read_timeout 300;
}

[root@sonarqube ~]# nginx -t

5.3:启动服务

[root@sonarqube ~]# systemctl start nginx
[root@sonarqube ~]# systemctl enable nginx
[root@sonarqube ~]# systemctl status nginx

5.4:防火墙放行端口

[root@sonarqube ~]# firewall-cmd --permanent --zone=public --add-port=80/tcp
[root@sonarqube ~]# firewall-cmd --reload

5.5:访问网站

  • 直接输原文链接:https://www.dqzboy.com入IP地址即可访问
1606119086 8f36400fec7a521
到此sonarqube部署完成

5.6:登入网站

  • 默认用户admin/admin
1606119145 1f1cb2b8bd70343
1606119146 d03474db72a5d83

6、SonarQube汉化


1606119291 e860792a380bd64
1606119292 9026577ac7e56f1
1606119293 0251e21b37edd9e
1606119295 5a9dfcb2553f208
1606119296 3cc67f1b922f8b9
1606119297 08acac52b42435d
1606119298 63a9128a4b17632
1606119300 4dd7782abe3db0d
1599059641 ae7af2e544b8e09


0 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!