下载并安装jdk
详细过程可参考:https://blog.csdn.net/qq_36957885/article/details/90692265
https://dev.mysql.com/downloads/mysql/5.7.html
详细过程可参考:
1.先查看是否已经有装过mysql并卸载删除
dpkg --list|grep mysql # 查看mysql的依赖项
# 然后依次卸载所列出的项目
sudo apt-get remove mysql-common
sudo apt-get remove mysql-xxx//依次卸载
# 随后执行,清除残留数据
dpkg -l|grep ^rc|awk '{print$2}'|sudo xargs dpkg -P
# 随后执行查看依赖项,这是发现已经全部删除了
dpkg --list|grep mysql
2.进行安装
(1)下载下来后拷到服务器,并解压(tar -zvf ****)
(2)安装mysql5.7需要两个包
apt-get install libaio1
apt-get install libmecab5
MySQL需要使用的包:(***
代表版本号)
mysql-common_***
mysql-community-client_***
mysql-client_***
mysql-community-server_***
其中MySQL5.7.29 需要以下包:
mysql-common_5.7.29-1ubuntu18.04_amd64.deb
mysql-community-client_5.7.29-1ubuntu18.04_amd64.deb
mysql-client_5.7.29-1ubuntu18.04_amd64.deb
mysql-community-server_5.7.29-1ubuntu18.04_amd64.deb
(3)开始操作(安装顺序不可更改)
sudo dpkg -i mysql-common_5.7.31-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-community-client_5.7.29-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-client_5.7.29-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-community-server_5.7.29-1ubuntu18.04_amd64.deb
(4)设置好密码
(5)配置ssh远程访问
vi /etc/mysql/mysql.conf.d/mysqld.cnf
# 加入这个配置是因为在sonarqube分析写入数据库得时候因为数据量太大,默认的大小满足不了,导致报错,所以需要配置这个参数
max_allowed_packet = 120M
# 注销
#bind-address = 0.0.0.0
修改用户账号密码和访问权限
[root@virde ~]# mysql -u root -p
mysql> ALTER USER 'root'@'%' IDENTIFIED BY 'MyNewPass4!';
Query OK, 0 rows affected (0.08 sec)
mysql> use mysql;
mysql> update user set host="%" where user='root';
# 执行该条命令会提示不能以GRANT用户去创建,你重新再接着执行便可
mysql> GRANT ALL ON *.* TO 'root'@'%';
mysql> flush privileges;
# 然后重启mysql服务
[root@virde ~]# service mysql restart
安装成功之后创建一个数据库“sonar"
[root@virde ~]# mysql -u root -p
mysql> create database sonar
注:建议运行内存在2G或2G已上, 下载(7.3这个版本)低于这个版本也行,因为新版本已经不支持mysql数据库了,得用oracle。
1.下载sonarQube 地址:https://www.sonarqube.org/downloads/
2.解压并安装
①使用如下命令解压"sonarqube-7.3.zip"
# 没有unzip先进行安装
sudo apt-get install unzip
# 再解压
sudo unzip sonarqube-7.3.zip
②修改配置文件
找到"sonarqube-7.3/conf/sonar.properties"
sonar.properties文件修改内容如下:(配置内容根据自己情况修改)
sonar.jdbc.username=root # 数据库用户名
sonar.jdbc.password=root # 数据库用户密码
sonar.jdbc.url=jdbc:mysql://127.0.0.1:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.driverClassName:com.mysql.jdbc.Driver
sonar.web.host=0.0.0.0
sonar.web.context=/ (访问根路径)
sonar.web.port=9000 (访问端口)
③启动
注意:启动sonarqube时不能使用root用户。(不要问我为什么,它就这个样子...)
进入"bin"目录查看文件:
我们可以看到不同操作系统不同位数的文件,找到自己系统对应的即可。
使用如下命令启动:
./sonar.sh start
我这里已经启动过了就用restart, 有start、restart、stop等命令
如上所示则启动成功。
④访问
http://ip:9000/sonar
注:访问地址有没有sonar或是不是别的根据自己配置决定。
点击右上角"Log in"进行登录,默认账号和密码:
账号:admin
密码:admin
⑤问题处理
若启动过程失败,可以进入"sonarqube-7.3/logs"文件夹查询log文件来定位启动失败的原因。
如果启动失败,进入log文件夹,进行日志查看,先从sonar.log->es.log->web.log依此调查并解决问题。
sonarQube安装完成之后,默认是英文版的,我们可以进行汉化,方便操作。
首先需要登录,之后按照下图操作:
1.创建项目->windows->下载解压->配置环境变量->项目根路径执行命令
1.ubuntu切换用户后PATH没有jdk信息
老是需要source /etc/prefile,所以直接在./sonarqube/bin/linux..../sonar.sh 中加入环境变量
# 前提是/etc/profile,已经配置JAVAHOME
export PATH=$JAVA_HOME/bin:$PATH
2.Packet for query is too large (12164278 > 4194304). You can change this value
详见二.(5)
https://www.cnblogs.com/whylaughing/p/13217753.html
1.安装SonarQube Scanner插件 地址:https://plugins.jenkins.io/sonar
2.重启jenkins
3.配置SonarQube
首先,在SonarQube中生成一个Token(PS:用token代替输入用户名和密码)然后,在Jenkins中配置连接sonarqube服务器的地址,这里用到的token就是刚才在sonarqube中创建的那个token。
最后,配置全局工具配置
3. 创建任务
最重要的是,配置SonarQube analysis properties
可以将其单独写到一个配置文件(sonar-project.properties)里面,也可以像这样每次都写一遍
sonar.projectKey=ks-cms-unicorn
sonar.projectName=ks-cms-unicorn
sonar.projectVersion=1.0
sonar.language=java
sonar.sourceEncoding=UTF-8
sonar.sources=$WORKSPACE
sonar.java.binaries=$WORKSPACE
其中,sonar.java.binaries属性至关重要,笔者也是试了好多次
相关文档在这里:
https://github.com/SonarSource/sonar-scanning-examples/blob/master/sonarqube-scanner/sonar-project.propertieshttps://docs.sonarqube.org/display/PLUG/Java+Plugin+and+Bytecode
3. 参考及文档
https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Jenkins