安装SonarQube 8.3版本

官方文档

下载地址

准备工作

  • 准备一台CentOS 7服务器
  • SonarQube 8.3版本只支持Java 11 (下载Java 11)

安装PostgreSQL 12.0

yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

yum install postgresql12-server

/usr/pgsql-12/bin/postgresql-12-setup initdb
systemctl enable postgresql-12
systemctl start postgresql-12 # 安装后的数据库data目录
cd /var/lib/pgsql/12/data # 修改配置
vi pg_hba.conf
host all all 0.0.0.0/0 md5 vi postgresql.conf
listen_addresses = '*' systemctl restart postgresql-12 # 客户端程序目录
cd /usr/pgsql-12/bin # 安装的时候会自动创建postgres用户密码为空
su postgres
bash-4.2$ psql
psql (12.3)
输入 "help" 来获取帮助信息. # 修改管理员密码(默认是随机密码)
ALTER USER postgres WITH PASSWORD 'postgres'; # 退出
\q

安装服务端程序

# 上传SQ v8.3
scp /Users/sunweisheng/Downloads/sonarqube-8.3.1.34397.zip root@sq.bluersw.com:/opt/ # 上传Java 11
scp /Users/sunweisheng/Downloads/jdk-11.0.7_linux-x64_bin.tar root@sq.bluersw.com:/opt/ # 解压缩
yum install zip unzip cd /opt
tar -xvf jdk-11.0.7_linux-x64_bin.tar
# 一定用ZIP解压缩原始文件,否则会产生很多._XXX的隐藏文件,使程序报错
unzip sonarqube-8.3.1.34397.zip # 创建用户
groupadd sonar
useradd sonar -g sonar
passwd sonar chown -R sonar.sonar /opt/jdk-11.0.7/
chown -R sonar.sonar /opt/sonarqube-8.3/

创建数据库

su postgres

bash-4.2$ psql

# 创建用户
create user sonar with password 'sonar'; # 创建数据库指定所属者
create database sonarqube owner=sonar encoding='UTF8'; # 将dbtest所有权限赋值给sonar
grant all on database sonarqube to sonar;

配置SonarQube

# 修改sonar.properties配置文件($SONARQUBE-HOME/conf/sonar.properties)
cd /opt/sonarqube-8.3/conf
vi sonar.properties sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar # 系统安装的是Java 8,所以需要单独指定Java 11的路径
vi wrapper.conf wrapper.java.command=/opt/jdk-11.0.7/bin/java # elasticsearch需要改
vi /etc/sysctl.conf vm.max_map_count=655360 sysctl -p # sonar是启动elasticsearch的用户
vi /etc/security/limits.conf sonar hard nofile 65536
sonar soft nofile 65536

手工启动检查日志排除错误

su sonar

# 第一次启动会有各种初始化过程
/opt/sonarqube-8.3/bin/linux-x86-64/sonar.sh start # 查看logs文件夹下的日志文件,排查错误。千万用ZIP解压缩否则产生一堆隐藏文件和莫名错误
cat /opt/sonarqube-8.3/logs/sonar.log
cat /opt/sonarqube-8.3/logs/es.log

启动出现报错解决

el端口被占用,修改vim /opt/sonarqube-8.3/conf/sonar.properties

sonar.search.port=9090

创建服务

vi /etc/systemd/system/sonarqube.service

ExecStart中的路径请根据版本不同重新设置

[Unit]
Description=SonarQube service
After=syslog.target network.target [Service]
Type=simple
User=sonar
Group=sonar
PermissionsStartOnly=true
ExecStart=/bin/nohup /opt/jdk-11.0.7/bin/java -Xms32m -Xmx32m -Djava.net.preferIPv4Stack=true -jar /opt/sonarqube-8.3/lib/sonar-application-8.3.1.34397.jar
StandardOutput=syslog
LimitNOFILE=65536
LimitNPROC=8192
TimeoutStartSec=5
Restart=always
SuccessExitStatus=143 [Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable sonarqube.service
systemctl start sonarqube.service

访问安装SonarQube

访问 http://192.168.60.214:9000/

默认用户名和密码都是:admin

Jenkins配置

下载sonarscanner-for-msbuild

下载地址

jenkins Job项目分析配置

下面是C#代码编译

CentOS 7 部署SonarQube 8.3版本及配置jenkins分析C#代码的更多相关文章

  1. 在Centos中部署redis运行状态图形化监控工具 — RedisLive

    写在前面 前两天看到张善友老师的一篇文章<先定个小目标, 使用C# 开发的千万级应用>,里面给出了一张腾讯OA基础服务中redis运行情况的一张监控图,然后想到自己的项目中前不久也上了re ...

  2. Centos 上部署 tomcat7

     在 Centos 上部署 tomcat7 搜索tomcat,选下面红色框框的官网 选箭头指着的版本7, 选 tar.gz 格式, 下载完压缩包,使用 ftpx 工具,放在 centos 的 /opt ...

  3. SSM 项目从搭建爬坑到 CentOS 服务器部署 - 速查手册

    SSM 项目从搭建爬坑到 CentOS 服务器部署 - 速查手册 提示: (1)CSDN 博客左边有操作工具条上有文章目录 (2)SSM 指 Spring,Spring MVC,MyBatis Mav ...

  4. Centos7下部署两套python版本并存

    Centos7下部署两套python版本并存   需求说明:centos7.2系统的开发机器上已经自带了python2.7版本,但是开发的项目中用的是python3.5版本,为了保证Centos系统的 ...

  5. CentOS上部署Django+Nginx+Uwsgi环境

    在CentOS上部署Django+Nginx+Uwsgi环境 奇谭  2016-09-01 评论  Linux  python django nginx uwsgi VirtualEnv的作用:创建隔 ...

  6. CentOS 7 部署 ASP.NET Core 应用程序

    原文:CentOS 7 部署 ASP.NET Core 应用程序 看了几篇大牛写的关于 Linux 部署 ASP.NET Core 程序的文章,今天来实战演练一下.2017年最后一个工作日,提前预祝大 ...

  7. 在k8s集群部署SonarQube

    目录 1.2.存储环境 1.3.sonarqube版本 2.部署sonarqube 2.1.部署PostgreSQL 2.2.部署SonarQube 2.3.访问检查 SonarQube 是一款用于代 ...

  8. 部署SonarQube代码检测服务并结合Jenkins使用

    一.SonarQube部署前的内核参数等配置以及java环境配置 1. 修改内核参数配置,使满足环境要求 [root@sonarqube ~]# vim /etc/sysctl.conf vm.max ...

  9. 在CentOS上部署kubernetes1.9.0集群

    原文链接: https://jimmysong.io/kubernetes-handbook/cloud-native/play-with-kubernetes.html (在CentOS上部署kub ...

  10. java部署系列:CentOS下部署Java7/Java8

    一.前言 1.本文主要内容 CentOS下部署OracleJDK CentOS下部署OpenJDK 2.适用范围与本篇环境 适用范围 1.CentOS 6+2.Java 7+ 本篇环境 1.CentO ...

随机推荐

  1. MQ(为什么要使用MQ)

    为什么使用MQ? 个人认为主要由几下几点: 1.在高并发环境下,由于来不及同步处理,请求往往会发生堵塞,比如说,大量的insert,update之类的请求同时到达数据库,直接导致无数的行锁表锁,甚至最 ...

  2. 定制centos发行版

    //轻量级Centos定制发行版==================================================================================== ...

  3. linux上安装nmon

    转载:https://blog.csdn.net/qq_35304570/article/details/813510651.新建目录:mkdir/nmon2.下载nmon包到本地 http://nm ...

  4. MySQL视频学习 1-18小节

    地址:https://www.bilibili.com/video/av39807944/?p=16 1-15:撘环境.建表.数据类型(https://www.runoob.com/mysql/mys ...

  5. Python:logging简要版

    日志等级(从低到高):DEBUG < INFO < WARNING < ERROR < CRITICAL 1.调试时,可记录DEBUG.INFO类的信息 2.投入使用,建议使用 ...

  6. Available parameters are [arg0, collection, list]错误的解决

    关于这个错误 每次只要是俩list集合一嵌套起来,就会报出这个错误,检查过,并不是关键字的误用: 这个才是根本原因: 当mybatis传入参数为list集合的时候:mybatis会自动把其封装为一个m ...

  7. Spring配置类为什么要分Full和Lite模式

    本文基于Spring 5.2.15-RELEASE 关于Spring配置类的Full模式和Lite模式,如果没有仔细阅读过源码或者官方文档的话,估计很多人都不知道这个概念.所以我们先来解释下这两个概念 ...

  8. 搞一个自己用的node-cli

    我们都用过 vue 的cli ,或者 react的cli,  亦或是其他的cli 如 vite 等.他们都是提供了一个全局命令,然后在终端执行这个全局命令就可以创建出模板项目.今天我们就自己做一个,给 ...

  9. Android和adb命令

    一.名词解释 1.SDK:是软件开发工具包 2.activity(活动):驱使软件运行的一段程序,软件系统和用户进行交互的界面叫一个活动 二.adb命令 1.查看连接的设备:adb devices 2 ...

  10. 西瓜播放器api的坑 直播设置自动播放

    我们先看一下官方DEMO let player = new HlsPlayer({ id: 'mse', url: '//sf1-cdn-tos.huoshanstatic.com/obj/media ...