jenkins的sonarqube之代码检测的两种方法
#:sonarqube下载地址,我们安装6.7 高版本已经不支持MySQL和Mariadb(最小3G内存)
https://www.sonarqube.org/downloads/
#:安装文档
https://docs.sonarqube.org/6.7/Requirements.html
- #;根据文档,先修改内核参数
- root@ubuntu:/usr/local/src# vim /etc/sysctl.conf
- vm.max_map_count=262144
- fs.file-max=65536
- root@ubuntu:/usr/local/src# sysctl -p
- #:修改文件数
- root@ubuntu:/usr/local/src# ulimit -n 65536
- root@ubuntu:/usr/local/src# ulimit -u 2048
- root@ubuntu:/usr/local/src# vim /etc/security/limits.conf
- sonarqube - nofile 65536
- sonarqube - nproc 2048
- #:创建用户
- root@ubuntu:/usr/local/src# useradd -m -s /bin/bash sonarqube
- #:安装数据库(5.6或5.7)
- root@ubuntu:/usr/local/src# apt install mysql-server mysql-client
- #:修改监听地址
- root@ubuntu:/usr/local/src# vim /etc/mysql/mysql.conf.d/mysqld.cnf
- bind-address = 0.0.0.0
- #:准备数据库
- mysql> create database sonar default character set utf8 collate utf8_general_ci;
- Query OK, 1 row affected (0.00 sec)
- mysql> GRANT ALL PRIVILEGES ON sonar.* TO 'sonar'@'%' IDENTIFIED BY '123456';
- Query OK, 0 rows affected, 1 warning (0.00 sec)
- #:测试一下
- root@ubuntu:/usr/local/src/jdk1.8.0_191# mysql -usonar -h192.168.6.105 -p123456
- #:下载sonarqube,并解压
- root@ubuntu:/usr/local/src# unzip sonarqube-6.7.7.zip
- root@ubuntu:/usr/local/src# ln -sv /usr/local/src/sonarqube-6.7.7 /usr/local/sonarqube
- #:修改目录的属主属组
- root@ubuntu:/usr/local/src# chown -R sonarqube.sonarqube /usr/local/sonarqube /usr/local/src/sonarqube-6.7.7
- #:切换到普通用户配置
- root@ubuntu:/usr/local/src# su - sonarqube
- #:修改配置文件
- sonarqube@ubuntu:~$ cd /usr/local/sonarqube
- sonarqube@ubuntu:/usr/local/sonarqube$ vim conf/sonar.properties
- sonar.jdbc.username=sonar
- sonar.jdbc.password=123456
- sonar.jdbc.url=jdbc:mysql://192.168.6.105:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
- sonar.jdbc.maxActive=60
- sonar.jdbc.maxIdle=5 #:最大空闲
- sonar.jdbc.minIdle=2 #:最小空闲
- sonar.jdbc.maxWait=5000
- sonar.web.host=0.0.0.0
- sonar.web.port=9000 #:如果和PHP装一起,记得改端口
- #:启动服务
- sonarqube@ubuntu:/usr/local/sonarqube$ ./bin/linux-x86-64/sonar.sh start
- #:看日志
- sonarqube@ubuntu:/usr/local/sonarqube$ tail -f logs/*.log
- 2019.10.04 13:02:25 INFO app[][o.s.a.SchedulerImpl] Process[ce] is up
- 2019.10.04 13:02:25 INFO app[][o.s.a.SchedulerImpl] SonarQube is up #:必须能看到这个才算启动成功
#:登录(账号密码都是admin)选跳过torken
#:修改中文
#:如果安装很慢
#:将插件放到此目录,并修改权限
#:重启服务
root@ubuntu:/usr/local/sonarqube# ./bin/linux-x86-64/sonar.sh restart
#:在jenkins服务器配置扫描器
- #:解压并做链接
- root@ubuntu:/usr/local/src# unzip sonar-scanner-cli-4.0.0.1744-linux.zip
- root@ubuntu:/usr/local/src# ln -sv /usr/local/src/sonar-scanner-4.0.0.1744-linux /usr/local/sonar-scanner
- #:修改配置文件,指向sonar server 的地址
- root@ubuntu:/usr/local/src# cd /usr/local/sonar-scanner
- root@ubuntu:/usr/local/sonar-scanner# vim conf/sonar-scanner.properties
- sonar.host.url=http://192.168.6.105:9000
- #:下载官方给的案例,测试一下
- #:解压
- root@ubuntu:/opt# unzip sonar-examples-master.zip
- #:进到此目录
- root@ubuntu:/opt/sonar-examples-master/projects/languages# cd /opt/sonar-examples-master/projects/languages
#:想测试那个就进到哪个目录
#:都明白以后再此目录下执行sonar-scanner命令
#:扫描java以来很多,根据提示解决
#:我后来扫描的是python的,扫描完,在web端就可以看到了
#:sonarqube结合jenkins(第一种办法)
- #:创建一个Python文件(故意写错)
- root@ubuntu:/opt/web3# vim app/index.py
- #!/usr/bin/env python
- print "Hello,word"
- #:在创建检测时需要的那个文件
- root@ubuntu:/opt/web3# vim sonar-project.properties
- # Required metadata
sonar.projectKey=linux37-test:v1
sonar.projectName=linux37-test:v1
sonar.projectVersion=1.0:v1
# Comma-separated paths to directories with sources (required)
sonar.sources=./
# Language
sonar.language=py
# Encoding of the source files
sonar.sourceEncoding=UTF-8- #;提交到仓库
- root@ubuntu:/opt/web3/app# git add ./*
- root@ubuntu:/opt/web3/app# git commit -m "v8"
- [master 596a068] v8
- 2 files changed, 16 insertions(+)
- create mode 100644 app/index.py
- create mode 100644 app/sonar-project.propertie
- root@ubuntu:/opt/web3/app# git push
#:在web端结合job配置
jenkins结合sonarqube (第二种办法)
#:先在jenkins安装sonarqube Scanner插件
#:配置sonarqube
#:配置扫描器
#:在jenkins的项目中配置那个文件
#:点击构建测试一下
jenkins的sonarqube之代码检测的两种方法的更多相关文章
- angularjs中向html页面添加内容节点元素代码段的两种方法
第一种方式:原生JS向html页面添加内容节点元素代码段: <!DOCTYPE html> <html> <head> <meta charset=" ...
- C#实现Dll(OCX)控件自动注册的两种方法 网上找的 然后 自己试了试 还是可以用的
尽管MS为我们提供了丰富的.net framework库,我们的程序C#开发带来了极大的便利,但是有时候,一些特定功能的控件库还是需要由第三方提供或是自己编写.当需要用到Dll引用的时候,我们通常会通 ...
- C#实现Dll(OCX)控件自动注册的两种方法
尽管MS为我们提供了丰富的.net framework库,我们的程序C#开发带来了极大的便利,但是有时候,一些特定功能的控件库还是需要由第三方提供或是自己编写.当需要用到Dll引用的时候,我们通常会通 ...
- C#自动实现Dll(OCX)控件注册的两种方法
尽管MS为我们提供了丰富的.net framework库,我们的程序C#开发带来了极大的便利,但是有时候,一些特定功能的控件库还是需要由第三方提供或是自己编写.当需要用到Dll引用的时候,我们通常会通 ...
- 在 k8s 中的 jenkins 集成 sonarqube 实现代码质量检查
不乱于心,不困于情,不畏将来,不念过往,如此安好 --<不宠无惊过一生>丰子恺 概述 关于在 k8s 中安装 jenkins 和 sornarqube 可以查看下面的文章: 在 k8s 中 ...
- Jenkins持续集成企业实战系列之两种网站部署的流程-----01
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- 【代码笔记】iOS-判断中英文混合的字符长度的两种方法
一,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. ...
- 在PHP代码中处理JSON 格式的字符串的两种方法:
总结: 在PHP代码中处理JSON 格式的字符串的两种方法: 方法一: $json= '[{"id":"1","name":"\u ...
- 代码操作Word时,目录自动更新的两种方法
最近的项目中有一个功能点为:根据分析数据库并生成报告.不过不是大数据.数据挖掘之类,报告的内容.组织方式都是事先固定下来的.实现的方式为,在普通word文档中插入书签制成模板,然后程序使用OpenXM ...
随机推荐
- 基于Dapr的 Azure 容器应用
微软在 Ignite 2021 大会上发布了预览版的Azure Container Apps,这是一个完全托管的无服务器容器运行时间,用于大规模构建和运行现代应用程序.从2021 年 11 月 2 日 ...
- Spring Security OAuth2 单点登录
1. OAuth 2.0 OAuth(Open Authorization)为用户资源的授权提供了一个安全的.开放而又简易的标准.最简单的理解,我们可以看一下微信OAuth2.0授权登录流程: 通过O ...
- MapReduce Service更换集群外部时钟源,仅需10步
摘要:MapReduce Service 集群使用NTP进行时钟同步.本文简要介绍了MapReduce Service集群NTP机制及NTP的配置方式. 本文分享自华为云社区<MapReduce ...
- Java——去掉小数点后面多余的0
当小数点后位数过多,多余的0没有实际意义,根据业务需求需要去掉多余的0.后端存储浮点型数据一般会用到Bigdecimal 类型,可以调用相关方法去掉小数后多余0,然后转为string. public ...
- RabbitMQ (五):死信队列
什么是TTL RabbitMQ的TTL全称为Time-To-Live,表示的是消息的有效期.消息如果在队列中一直没有被消费并且存在时间超过了TTL,消息就会变成了"死信" (Dea ...
- Python编程环境设置
第1节.Python编程环境设置 一.sublime相关 1.sublime REPL插件安装 (1)安装 先打开插件安装面板:ctrl+shift+P 输入install ,选择Package Co ...
- Scrapy入门到放弃06:Spider中间件
前言 写一写Spider中间件吧,都凌晨了,一点都不想写,主要是也没啥用...哦不,是平时用得少.因为工作上的事情,已经拖更好久了,这次就趁着半夜写一篇. Scrapy-deltafetch插件是在S ...
- myeclipse与tomcat,运行jsp程序
一.myeclipse中配置JRE 步骤: 1.选择window->preferences->Java->Installed JREs 2.点击窗口右边的"add" ...
- CF187D BRT Contract
考虑如果哪次经过了红灯则显然已经和出发的时间没关系了. 然后我们需要做的是怎么样找到最近的一个是红灯的点. 然后实际下是我们做一个前缀和:\(L_i = \sum d_i\) 然后求\(\min (L ...
- FFT/NTT复习笔记&多项式&生成函数学习笔记Ⅰ
众所周知,tzc 在 2019 年(12 月 31 日)就第一次开始接触多项式相关算法,可到 2021 年(1 月 1 日)才开始写这篇 blog. 感觉自己开了个大坑( 多项式 多项式乘法 好吧这个 ...