在Ubuntu 18.04上搭建SonarQube服务
在Ubuntu 18.04上搭建SonarQube服务
- 在Ubuntu 18.04上搭建SonarQube服务
- 安装MySQL
- 创建sonar数据库
- 安装JRE/JDK
- 安装SonarQube
- 1号坑
- 2号坑
- 3号坑
- 初识SonarQube
在Ubuntu 18.04上搭建SonarQube服务
安装MySQL
在Ubuntu 18.04上,默认情况下,只有最新版本的MySQL包含在APT软件包存储库中,你可以直接更新服务器上的软件包索引并使用apt安装默认软件包。
sudo apt update
sudo apt install mysql-server
这样安装MySQL不会提示您设置密码或进行任何其他配置更改,使用你需要更改root用户的密码。先查看mysql安装的路径,再查看默认密码。
cd /etc/mysql
whereis mysql
sudo cat debian.cnf
然后你可以直接使用默认的账号密码登录mysql,例如下面命令中的账号密码来源于上面获取的默认账户。
mysql -u debian-sys-maint -p
[Enter password] cXzi3iw12iQgVFw0
然后通过下面的sql命令更改root默认用户名和密码。
use mysql;
update mysql.user set authentication_string=password('root') where user='root' and Host ='localhost';
update user set plugin="mysql_native_password";
flush privileges;
quit;
如果你顺利的执行了上面的所有操作,你可以重新启动mysql,验证一下是否成功修改root用户名和密码。
sudo service mysql restart
mysql -u root -p
[Enter password]root
不管你如何安装它,MySQL应该已经开始自动运行,要测试它,你可以检查其运行状态。
systemctl status mysql.service
如果mysql没有运行,你可以用sudo systemctl start mysql
启动它。
创建sonar数据库
将mysql的安全性降低最低,以方便你创建最简单的密码,反正这只是教程,不用管安全。
mysql -u root -p
[Enter password]rootset global validate_password_policy=0;
set global validate_password_length=1;
登陆mysql创建sonar数据库和用户,用户是sonar,密码是sonar。
mysql -u root -p
[Enter password]rootCREATE DATABASE sonar DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'sonar' IDENTIFIED BY 'sonar';
GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';
GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
FLUSH PRIVILEGES;
安装JRE/JDK
默认情况下,Ubuntu 18.04包含Open JDK,它是JRE和JDK的开源版本。所以你应该先更新软件包索引,再检查Java是否已经安装。
sudo apt update
java -version
上面的输出表示Java当前未安装,你可以执行下面命令来安装OpenJDK,并验证安装。
sudo apt install default-jre
java -version
该命令将安装Java运行时环境(JRE),这将允许你运行几乎所有的Java软件。
除了JRE之外,你可能还需要Java开发工具包(JDK)才能编译和运行一些特定的基于Java的软件,你可以检查JDK是否已经安装。
sudo apt update
javac -version
上面的输出说明当前系统没有安装JDK,你需要执行以下命令安装JDK,并验证安装。该命令也将安装JRE。
sudo apt install default-jdk
javac -version
通过java -version
和javac -version
可以检查Java的版本,可以用来验证是否安装了JRE/JDK。
安装SonarQube
首先你需要到 SonarQube官网下载地址 下载最新的SonarQube版本,并解压缩到任意目录下。同时将SONAR_RUNNER_HOME变量加入PATH,配置SonarQube的环境变量。
# 使用vim编辑
sudo vim /etc/profile
# 添加内容
SONAR_HOME="/home/parallels/sonarqube-7.3/"
# 重启环境变量
. /etc/profile
你需要为SonarQube配置数据库配置,修改和增加./conf/sonar.properties文件的内容。(其实大部分都是取消注释就可以了)
sonar.jdbc.username=root
sonar.jdbc.password=root
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.web.host=0.0.0.0
sonar.web.context=/sonar
sonar.web.port=9000
使用下面的命令启动SonarQube,并检查SonarQube的启动状态。
cd sonarqube-7.3/bin
cd linux-x86-64
./sonar.sh start
./sonar.sh status
当你启动失败时,就像上面的输出启动成功,状态却是没有在运行,你可以观察启动日志,来定位错误信息。
tail -200f ../../logs/sonar.log
当然最好的方法是在执行启动命令前,同时观察启动日志,这是可以最直观的看到是否启动成功。
1号坑
提升没有权限,你只要添加sudo执行启动命令就可以了。
sudo ./sonar.sh start
2号坑
提示部分功能在Java 9版本中就放弃支持,你需要下载Java 8,并把系统默认版本切换到Java 8版本。
sudo apt install openjdk-8-jdk
sudo update-alternatives --config java
java -version
3号坑
当启动时没有错误信息,但是SonarQube一启动又马上关闭,所以你需要使用下面命令观察运行日志。
tail -200f ../../logs/es.log
由于SonarQube 6.6以后版本加入了elasticsearch,你会遇到不能以root用户启动elasticsearch的问题。这里你可以用最简单粗暴的方法解决,直接为当前用户赋予sonarqube-7.3目录的权限。
sudo chown -R parallels:parallels sonarqube-7.3
这样操作以后,操作SonarQube时就不再需要添加sudo来执行命令了,也是挺好。
初识SonarQube
当你完成SonarQube的安装过程,你可以通过 http://127.0.0.1:9000/sonar 访问SonarQube主页。
SonarQube的默认管理账户是admin/admin,你登录以后会进入项目管理主页,但还是有点懵?不知道具体含义?没关系,你可以安装汉化包。
在页面上找到 Administration > Marketplace ,在搜索框中输入 chinese ,会搜索出一个 Chinese Pack ,点右侧的 install 按钮开始安装。
安装成功后,会提示重启SonarQube服务器,稍等一会,再看页面上已经显示成中文,这时候你就可以开始探索SonarQube了。
在Ubuntu 18.04上搭建SonarQube服务相关推荐
- 在Ubuntu 18.04上搭建HttpRunnerManager服务
首先在HttpRunnerManager的GitHub页面下载项目代码,然后存放在任意目录下. 安装python的Django库,可以使用pip3 list --format columns确认是否已 ...
- linux下如何启动vsftp服务,如何在Ubuntu 18.04上使用VSFTP快速设置FTP服务器
如果您需要配置一个FTP服务器快速启动运行,那么VSFTP的易用性是无与伦比的. 如果你想将应用程序迁移到最新版本Ubuntu Linux服务器中,并且需要快速启动并运行FTP服务器.如何操作?这实际 ...
- Ubuntu 18.04上使用snort3搭建NIDS(三)| ELK可视化篇
为最近项目上要用到snort3,但是找了很多博客都是snort2.9.x的安装与配置,所以只能靠着官网文档和自己的反复摸索来学习snort3相关的内容.后面将会把snort3相关的发一个系列的博客,这 ...
- Ubuntu 18.04上使用snort3搭建NIDS(二)| 配置篇
为最近项目上要用到snort3,但是找了很多博客都是snort2.9.x的安装与配置,所以只能靠着官网文档和自己的反复摸索来学习snort3相关的内容.后面将会把snort3相关的发一个系列的博客,这 ...
- Ubuntu 18.04 下搭建 C/C++编译开发环境及GCC多版本切换
关注公众号 风色年代(itfantasycc) 领 500G Java 微服务 开发资料 Ubuntu 18.04 下搭建 C/C++编译开发环境及GCC多版本切换_Linux教程_Linux公社-L ...
- 本地搭建Wooyun漏洞库(二)——Ubuntu 18.04下搭建WooYun漏洞库
本文参考https://github.com/grt1st/wooyun_search 这篇文章是建立在已经搭建好LAMP环境的基础上进行的,搭建方法可见:本地搭建Wooyun漏洞库(一)--Ubun ...
- 服务器接收消息写日志,在Ubuntu 18.04上配置Rsyslog集中式日志服务器的方法
本文介绍在Ubuntu 18.04操作系统上配置Rsyslog集中式日志服务器的方法. 前言 登录任何Linux系统对于分析和排除与系统和应用程序相关的任何问题至关重要,借助Graylog等工具(参考 ...
- ubuntu memcached php,如何在 Ubuntu 18.04 上安装 Memcached
Memcached 是一个免费的开源高性能内存中键值数据存储. 它最常用于通过从数据库调用的结果缓存各种对象来加速应用程序. 在本教程中,我们将介绍在 Ubuntu 18.04 上安装和配置最新版 M ...
- 如何在Ubuntu 18.04上创建多节点MySQL集群
翻译转载:https://www.digitalocean.com/community/tutorials/how-to-create-a-multi-node-mysql-cluster-on-ub ...
最新文章
- 语音标注自动音段对齐工具SPPAS使用笔记
- 计算机类和鼠标类是什么关系,常见鼠标的种类
- Go中线程和协程的区别
- ubuntu使用docker的Huginn上手记
- 02 - 体系结构概述
- Mybatis查询时数据丢失的问题
- 【保研记录】预推免面试可能遇到的问题(偏计算机)
- c语言运算程序示例,C语言算术运算示例程序
- 阵列信号处理-学习笔记003-波束形成
- netty权威指南(第二版)对应的源码
- win10计算器rsh_win10 自带计算器快捷键有哪些_windows10计算器快捷键汇总
- torch学习 (二十九):周杰伦歌词数据集测试循环神经网络
- C++---暂时的休憩
- 服务器开机后,自动启动某程序,并且打开Google浏览器,全屏展示
- 任意大小icon图标制作方法
- 你的时间有限,不要为别人而活
- 第九章 SQL Server的简单应用
- 1248 - Every derived table must have its own alias
- 为什么精英这么用脑不会累
- 公安部备案网址过程记录