DevOps / SonarQube

SonarQube安装与汉化教程

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

1文章来源(Source):https://www.dqzboy.com、安装相关工具


[[email protected] ~]# yum install -y epel-release unzip vim wget

2、安装JDK


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

3、安装数据库(PGSQL)


3.1:添加 PostgreSQL 10 YUM 源

[[email protected] ~]# 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

[[email protected] ~]# yum install -y postgresql10-server postgresql10

3.3:初始化 PGDATA

[[email protected] ~]# /usr/pgsql-10/bin/postgresql-10-setup initdb

3.4:编辑配文章来源(Source):https://www.dqzboy.com置文件启动MD5验证

[[email protected] ~]# vim  /var/lib/pgsql/10/data/pg_hba.conf
SonarQube安装与汉化教程-浅时光博客

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

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

3.6:放通端口

  • 如果开启了防火墙,还需要在防火墙上允许 TCP po文章来源(Source):https://www.dqzboy.comrt 5432
[[email protected] ~]# firewall-cmd --permanent --zone=public --add-port=5432/tcp
[[email protected] ~]# firewall-cmd --reload

3.7:启动服务

[[email protected] ~]# systemctl start postgresql-10
[[email protected] ~]# systemctl enable postgresql-10
[[email protected] ~]# systemctl status postgresql-10
[[email protected] ~]# ss -tnlp |grep 5432

3.8:创建数据库

[[email protected] ~]# 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
SonarQube安装与汉化教程-浅时光博客

4、部署SonarQube


4.1:下载程序包

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

4.2:解压至/usr/l文章来源(Source):https://www.dqzboy.comocal

[[email protected] ~]# unzip /opt/sonarqube.zip -d /usr/local

4.3:重命名目录

[[email protected] ~]# mv /usr/local/sonarqube-8.0 /usr/local/sonarqube

4.4:为sonarqube添加用户

  • 使用root无法启动sonarqube
文章来源(Source):https://www.dqzboy.com
[[email protected] ~]# useradd sonar -s /sbin/nologin
[[email protected] ~]# id sonar
uid=1000(sonar) gid=1000(sonar) groups=1000(sonar)

4.5:修改目录权限

[[email protected] ~]# chown -R sonar. /usr/local/sonarqube/

4.6:修改配置

[[email protected] ~]# 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
SonarQube安装与汉化教程-浅时光博客
  • 配置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
SonarQube安装与汉化教程-浅时光博客

4.7:创建sonarqube启动脚本

[[email protected] ~]# 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的虚拟内存

[[email protected] ~]# vim /etc/sysctl.d/00-sysctl.conf
vm.max_map_count = 262144
SonarQube安装与汉化教程-浅时光博客
  • 使配置生效
[[email protected] ~]# sysctl -p /etc/sysctl.d/00-sysctl.conf

4.9:启动服务

[[email protected] ~]# systemctl daemon-reload
[[email protected] ~]# systemctl start sonar.service
[[email protected] ~]# systemctl enable sonar.service
[[email protected] ~]# systemctl status sonar.service
[[email protected] ~]# ss -tnlp | grep 9000

5、安装配置Nginx反向代理


5.1:安装Nginx

[[email protected]be soft]# rpm -ivh nginx-1.16.1-1.el7.ngx.x86_64.rpm

5.2:修改配置

[[email protected] ~]# 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;
}

[[email protected] ~]# nginx -t

5.3:启动服务

[[email protected] ~]# systemctl start nginx
[[email protected] ~]# systemctl enable nginx
[[email protected] ~]# systemctl status nginx

5.4:防火墙放行端口

[[email protected] ~]# firewall-cmd --permanent --zone=public --add-port=80/tcp
[[email protected] ~]# firewall-cmd --reload

5.5:访问文章来源(Source):https://www.dqzboy.com网站

  • 直接输入IP地址即可访问
SonarQube安装与汉化教程-浅时光博客
到此sonarqube部署完成

5.6:登入网站

  • 默认用户admin/admin
SonarQube安装与汉化教程-浅时光博客
文章来源(Source):https://www.dqzboy.com
SonarQube安装与汉化教程-浅时光博客

6、SonarQube汉化


SonarQube安装与汉化教程-浅时光博客
文章来源(Source):https://www.dqzboy.com
SonarQube安装与汉化教程-浅时光博客
SonarQube安装与汉化教程-浅时光博客
SonarQube安装与汉化教程-浅时光博客
SonarQube安装与汉化教程-浅时光博客
SonarQube安装与汉化教程-浅时光博客
SonarQube安装与汉化教程-浅时光博客
SonarQube安装与汉化教程-浅时光博客
SonarQube安装与汉化教程-浅时光博客
0 条回应
    本站已安全运行: | 耗时 0.500 秒 | 查询 108 次 | 内存 19.85 MB