SonarQube 7.7 安装教程
SonarQube 7.7 安装教程
一、 CentOS设置
1. 更换阿里源
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache
2. 安装网络工具
yum install net-tools -y
3. 使用阿里NTP服务
yum install chrony -y
sed -i "/server/d" /etc/chrony.conf
vi /etc/chrony.conf 增加 server ntp.aliyun.com iburst
systemctl restart chronyd
chronyc tracking
二、 安装postgres
这里除了选择采用本方式外,读者也可以通过基于Docker的方式进行部署,具体参考该文档
1. 下载rpm包
yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm -y
由于网络原因,这里建议yum需要通过代理进行下载。
2. 安装依赖库
yum install -y postgresql10 postgresql10-server
3. 初始化并设置开机启动
/usr/pgsql-10/bin/postgresql-10-setup initdb
systemctl enable postgresql-10
systemctl start postgresql-10
4. 开启鉴权
为了保证可以通过外网访问数据库,这里需要进行相关的设置。
vi /var/lib/pgsql/10/data/pg_hba.conf 中修改如下:
host all all 192.168.1.1/24 md5
host all all 192.168.2.1/24 md5
host all all 127.0.0.1/32 trust
systemctl restart postgresql-10
其中IP地址需要根据实际需要连接到该数据库的IP地址段进行决定。
5. 修改监听地址
vi /var/lib/pgsql/10/data/postgresql.conf
listen_addresses = '*'
systemctl restart postgresql-10
6. 开启防火墙
firewall-cmd --zone=public --add-port=5432/tcp --permanent
firewall-cmd --reload
firewall-cmd --query-port=5432/tcp
7. 为SonarQube初始化
# 进入数据库
su postgres
psql -U postgres
# 创建账户
CREATE USER sonar WITH PASSWORD 'sonar';
# 创建数据库
CREATE DATABASE sonar WITH OWNER sonar ENCODING 'UTF8';
\q
三、 安装JDK8
1. 下载安装包(usr/local/install)
curl -O ftp://ftp.vip56.cn:88/software/java/jdk-8u121-linux-x64.tar.gz
tar -zxvf jdk-8u121-linux-x64.tar.gz
mv jdk1.8.0_121 jdk1.8
2. 修改环境变量
vi /etc/profile 并增加以下内容
export JAVA_HOME=/usr/local/install/jdk1.8
export CLASSPATH=.:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
3. 配置立即生效
source /etc/profile
4. 查看Java版本
java -version
四、 安装SonarQube
1. 下载安装包(usr/local/install)
curl -O ftp://ftp.vip56.cn:88/software/sonarqube/sonarqube-7.7.zip
2. 下载zip解压
yum install -y unzip zip
3. 解压文件
unzip sonarqube-7.7.zip
4. 修改配置信息
vi sonarqube-7.7/conf/sonar.properties
# 调整数据库连接
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:postgresql://[ip]/sonar
# 调整监听地址
sonar.web.host=0.0.0.0
sonar.web.port=8080
sonar.web.context=/sonar
5. 创建用户
由于SonarQube内部使用了ElasticSearch所以不能直接以root用户启动,需要使用单独的用户即可。
adduser sonar
passwd 5802486
# 然后需要设置sonarqube文件夹权限给这个用户
chown -R sonar [路径]
6. 系统参数调整
vi /etc/sysctl.conf 增加如下内容
vm.max_map_count = 262144
sysctl -p
vi /etc/security/limits.conf 增加如下内容
* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 4096
7. 开启防火墙并设置转发
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 --permanent
sudo systemctl reload firewalld
8. 配置开机启动
vi /etc/init.d/sonar 输入以下内容
#!/bin/sh
#
# rc file for SonarQube
#
# chkconfig: 345 96 10
# description: SonarQube system (www.sonarsource.org)
#
### BEGIN INIT INFO
# Provides: sonar
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: SonarQube system (www.sonarsource.org)
# Description: SonarQube system (www.sonarsource.org)
### END INIT INFO
/usr/bin/sonar $*
输入以下指令启用
sudo ln -s $SONAR_HOME/bin/linux-x86-64/sonar.sh /usr/bin/sonar
sudo chmod 755 /etc/init.d/sonar
sudo chkconfig --add sonar
# 切换用户
su sonar
sonar start
五、 对.Net Core项目进行分析
1. 安装具体工具包
dotnet tool install --global dotnet-sonarscanner
2. 创建项目申请token,并在项目中执行如下指令
dotnet sonarscanner begin /k:"AIAssistantService" /d:sonar.host.url="http://sonar.vip56.cn/sonar" /d:sonar.login="0f472642dc8ece83b98e7b0296df102ca625300c"
注意其中login需要根据实际申请修改,/k为项目标识,host_url为sonarqube server安装的地址。
3. 编译项目
dotnet build
4. 扫描项目
dotnet sonarscanner end /d:sonar.login="0f472642dc8ece83b98e7b0296df102ca625300c"
注意如果使用Docker进行操作需要使用 alpine 版本镜像,同时增加该代码用于安装openjdk:
apk add --no-cache --update openjdk8-jre nss
SonarQube 7.7 安装教程的更多相关文章
- Linux+apache+mono+asp.net安装教程
Linux+apache+mono+asp.net安装教程(CentOS上测试的) 一.准备工作: 1.安装linux系统(CentOS,这个就不多讲了) 2.下载所需软件 http-2.4.4.ta ...
- Greenplum 源码安装教程 —— 以 CentOS 平台为例
Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...
- git 安装教程
昆,简单说下安装教程1,安装Git2,安装TortoiseGit3,打开第一步安装的git工具GIT BASH
- Docker和Docker-compose安装教程以及docker-elk,docker-storm安装教程
此安装教程仅供我自己安装配置时查看,其他的人不可以偷看!!! 安装Docker 1. Update package information, ensure that APT works with th ...
- RHEL 6.3 详细安装教程
以前刚接触linux时,什么都不懂,为了学习,在电脑上安装双系统(原系统为Win7),吃过不少苦头,在网上搜教程,很多都是语焉不详,导致安装过程中战战兢兢.最近朋友面试运维,面试官有考他对linux安 ...
- Android Studio的下载和安装教程(从ADT到AS)
之前一直使用的是Android development tools(简称ADT),后来说是google对ADT不再提供支持,然后一直在考虑是否把自己电脑换成Android Studio(简称AS),从 ...
- mysql快速导出数据库ER图和数据字典(附navicat11安装教程及资源)
♣ mysql使用navicat11快速导出数据库ER图 ♣ mysql使用navicat11快速导出数据库数据字典 ♣ navicat11 for mysql (这里是mysql5.7.12)专业版 ...
- Smokeping安装教程
Smokeping安装教程 #Smokeping2.6.8安装教程 #2016.3.6 改编v1.0 #Linux运维技术交流 347163978 环境 CentOS release 6.4 (F ...
- (二)ADS1.2的安装教程以及使用 调试 (不会 AXD 调试工具)
安装教程: 参考百度 http://jingyan.baidu.com/article/cdddd41c7db85253cb00e1ae.html 具体使用看: 杨铸的那本书(嵌入式底层软件驱动开发) ...
随机推荐
- shell数组的用法
在shell里面想获取某个变量的值,使用$符开头,如:$a或者${a}即可. 获取数组长度 arr_length=${#arr_number[*]}或${#arr_number[@]}均可,即形式:$ ...
- swift基本数据类型使用-字典使用
目录 1.定义的定义 2.对可变字典的基本操作 3.遍历字典 4.字典合并 5.示例 1.定义的定义 1> 不可变字典: let 2> 可变字典: var 2.对可变字典的基本操作 增删改 ...
- 关于AES的S盒子的计算
对于置换piS 有如下计算: The matrix used in AES is a rotational matrix based on the value 0x1F, which is 00011 ...
- (专题一)07 matlab中字符串的表示
matlab中,字符串使用单引号括起来的字符序列 >>xm='Central South University' >>xm(1:3) ans= Cen 截取1--3这三个字符, ...
- OOD 面向对象面试干货分享| 面向对象设计的SOLID原则
S.O.L.I.D是面向对象设计和编程(OOD&OOP)中几个重要编码原则(Programming Priciple)的首字母缩写. 简写 全拼 中文翻译 SRP The Single Res ...
- 看动画学算法之:排序-count排序
目录 简介 count排序的例子 count排序的java实现 count排序的第二种方法 count排序的时间复杂度 简介 今天我们介绍一种不需要作比较就能排序的算法:count排序. count排 ...
- ThreadLocal源码分析与实践
ThreadLocal是什么? ThreadLocal是一个线程内部存储类,提供线程内部存储功能,在一个ThreadLocal对象中,每一个线程都存储各自独立的数据,互不干扰 示例如下: public ...
- cookie、session和md5加密
cookie Http无状态协议,只能在同一个网站(包括多个页面)下获取,存储在客户端本地的一段信息,帮助我们存储信息获取信息.但是同样有风险:我们自己在浏览器上可以操作或者设置Cookie. con ...
- Node.js文件上传
Node.js express使用Multer实现文件上传html部分 <div> <h3>文件上传:</h3> 选择一个文件上传: <br/> < ...
- Java基础——锁
1.锁 当一个共享资源被多方访问时为了避免发生冲突而施加的一种机制 2.乐观锁和悲观锁 Java中锁在宏观分为乐观锁和悲观锁 乐观锁:是一种乐观思想,认为多读少写,一般情况下数据在修改时不会出现冲突, ...