Ubuntu上搭建Sonar Qube(developer版)服务器

背景

之前出过一篇关于SonarQube社区版的镜像启动的方法,搭建SonarQube服务来检测代码,但是有些服务从开发版才支持,最低开发板(比如DevOps PR集成),今天我们就来搭建一台开发版的SonarQube服务器。(除了社区版,其他版本是不支持镜像的)

环境介绍

硬件介绍:

官方文档介绍:最小2核运行内存
我们这里用的是2核4G的Ubuntu镜像的虚拟机
系统里面最低的配置:

sudo sysctl -w vm.max_map_count=262144

sudo sysctl -w fs.file-max=65536

ulimit -n 65536

ulimit -u 4096

如果低于配置会导致系统启动失败。

外部安装:

运行环境:Open JDK-17
数据库:Postgresql - 16.1
检测工具: SonarQube(Developer)

环境准备

openjdk-17& openjre-17

我们首先安装JDK首先更新升级一下我们的包管理器。

sudo apt update
sudo apt upgrade

在这里插入图片描述

sudo apt install openjdk-17-jdk
sudo apt install openjdk-17-jre

在这里插入图片描述
在这里插入图片描述

查看安装Java版本

然后我们可以查看一下

java --version

在这里插入图片描述

数据库postgresql - 16.1

我们来安装数据库我哦们使用的是16
1.我们添加下载postgresql 的存储库。

sudo sh -c 'echo "deb https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

在这里插入图片描述

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

在这里插入图片描述
2.更新一下包管理器

sudo apt-get update

在这里插入图片描述
3.安装数据库

sudo apt-get -y install postgresql

在这里插入图片描述

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install wget unzip -y

在这里插入图片描述

4.设置数据库自启动

sudo systemctl start postgresql
sudo systemctl enable postgresql

在这里插入图片描述

5.更改数据库用户的原始密码

sudo passwd postgres

在这里插入图片描述
6.进入到数据库的shell命令行创建用户和角色

su - postgres
createuser sonar
 ALTER USER sonar WITH ENCRYPTED password 'sonar';
 CREATE DATABASE sonarqube OWNER sonar;
 grant all privileges on DATABASE sonarqube to sonar;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.退出命令行,回到Linux操作界面

 \q
 exit

在这里插入图片描述
在这里插入图片描述

SonarQube(Developer)

1.安装开发板的SonarQube,这个链接怎么来的呢,我们可以去官网下载压缩包。解压缩后发现里面有Win,Mac,Linux三种系统的包,但是在表面上并没有明确区分。

sudo wget https://binaries.sonarsource.com/CommercialDistribution/sonarqube-developer/sonarqube-developer-10.3.0.82913.zip	

在这里插入图片描述
2.我们可以使用命令”ls“查看下载的安装包。
在这里插入图片描述
3.解压缩压缩包到opt文件夹,并移动到"opt下的"sonarqube""文件夹内。

sudo unzip sonarqube-developer-10.3.0.82913.zip -d /opt
sudo mv /opt/sonarqube-10.3.0.82913 /opt/sonarqube

在这里插入图片描述
在这里插入图片描述

4.创建sonar用户和组,用创建的用户和组来启动Sonarqube。

sudo groupadd sonar
sudo useradd -c "user to run SonarQube" -d /opt/sonarqube -g sonar sonar
sudo chown sonar:sonar /opt/sonarqube -R

在这里插入图片描述
5. 创建完成后,我们修改Sonarqube配置文件,将刚刚的用户密码以及数据库的驱动链接配置进去。

sudo vim /opt/sonarqube/conf/sonar.properties

写入以下代码

sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:postgresql://localhost:5432/sonarqube

其中5432是我们数据库的端口
在这里插入图片描述
6.修改启动文件

sudo vim /opt/sonarqube/bin/linux-x86-64/sonar.sh

将我们的启动角色写入到文件中

RUN_AS_USER=sonar

在这里插入图片描述
7.切换到sonar用户,打开启动文件所在的文件夹,启动文件

sudo su sonar
cd /opt/sonarqube/bin/linux-x86-64/
./sonar.sh start

切换到sonar用户
在这里插入图片描述
找到启动文件所在的文件夹
在这里插入图片描述
启动SonarQube
在这里插入图片描述

调试

1.查看SonarQube的运行状态

./sonar.sh status

在这里插入图片描述
2.查看运行日志

tail /opt/sonarqube/logs/sonar.log

在这里插入图片描述
3.配置系统限制
我们看上图,可以看到Process exit:78,一般这种情况是因为SonarQube内置的Elasticsearch因为系统配置低于需求配置所以没有启动起来。
(Elasticsearch 用于促进快速准确的信息检索。它是在专用的 Java 进程中执行的。)
在这里插入图片描述
4.查看配置的大小,并重新设置成最低数值’262144‘

sudo sysctl -a|grep vm.max_map_count
sudo sysctl -w vm.max_map_count=262144

在这里插入图片描述
5.然后我们重新启动,看到日志,运行状态,一切OK了。

在这里插入图片描述

开启端口

1.回到Azure portal ,将端口”9000“打开
在这里插入图片描述

界面访问

http://"yourIPAddress":9000

1.我们访问一下服务,http://“ip”:9000
在这里插入图片描述
2.初始账号密码都是admin

在这里插入图片描述
3.强制重置密码
在这里插入图片描述
4.然后我们一进来就会提示需要License。
在这里插入图片描述

查看系统

1.转到如下图所示,我们可以看到系统是Developer版的。
在这里插入图片描述
2.数据库信息

在这里插入图片描述
3.如果我们有了 License,我们可以在如下图所示地方填补。
在这里插入图片描述
(注:这款软件,目前是代码检测的主流,只有社区版书免费的,开发版及以上都是需要付费的,当然你可以选择试用,但是试用也需要向厂商提工单,请求一个免费体验14天的License Key,不然我们是无法运行,代码检测的,亲测结论

  • 32
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
要使用Docker搭建SonarQube,首先需要拉取SonarQube的镜像并安装。可以通过以下命令拉取SonarQube镜像: ``` docker pull sonarqube ``` 然后,可以重新构建SonarQube镜像来添加汉化包和其他插件。可以使用以下Dockerfile来重新构建镜像: ``` FROM sonarqube ADD sonar-l10n-zh-plugin-8.6******``` 这是因为vm.max_map_count的值太低导致的。你可以通过以下命令来增加vm.max_map_count的值: ``` sysctl -w vm.max_map_count=262144 ``` 最后,还需要搭建一个PostgreSQL数据库容器来与SonarQube容器连接。可以使用以下命令来搭建PostgreSQL容器: ``` docker run -d -p 5432:5432 --name postgresql -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar postgres ``` 这样,你就成功地使用Docker搭建SonarQube。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Docker搭建代码检测平台SonarQube并检测maven项目的流程](https://download.csdn.net/download/weixin_38651273/14048771)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [docker搭建sonar](https://blog.csdn.net/qq_39122146/article/details/112328478)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小松很努力

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值