如何在 Ubuntu 20.04 LTS 上安装 SonarQube
admin
2023-07-31 03:04:22
0

SonarQube 是一个基于 Web 的开源工具,用于管理代码质量和代码分析。SonarQube 包括错误和漏洞检测以及代码跟踪等功能。SonarQube 可以集成到 GitHub、Azure DevOps、Bitbucket、GitLab和 Docker。如果您碰巧有一个本地 Linux 服务器,或者有 AWS、Google Cloud 或 Azure 之类的云帐户,那么您可以免费部署社区版的 SonarQube。

在 Ubuntu 20.04 LTS Focal Fossa 上安装 SonarQube

步骤 1. 首先,通过apt在终端中运行以下命令确保所有系统包都是最新的。

sudo apt update
sudo apt upgrade

步骤 2. 配置内核。

现在修改内核系统限制。为此,我们必须设置以下内容:

  • vm.max_map_count 必须大于或等于 524288
  • fs.file-max 必须大于或等于 131072
  • SonarQube 用户必须能够打开至少 131072 个文件描述符
  • SonarQube 用户必须能够打开至少 8192 个线程
sudo nano /etc/sysctl.conf

将以下行添加到该文件的底部:

vm.max_map_count=262144
fs.file-max=65536
ulimit -n 65536
ulimit -u 4096

接下来,使用以下命令打开limits.conf文件:

sudo nano /etc/security/limits.conf

在此文件的末尾,添加以下内容:

sonarqube   -   nofile   65536
sonarqube   -   nproc    4096

然后,重新启动系统以使更改生效。:

reboot

步骤 3. 安装 Java。

运行以下命令安装 OpenJDK 和 JRE 11:

sudo apt install openjdk-11-jdk
sudo apt install openjdk-11-jre

步骤 4. 安装 PostgreSQL。

SonarQube 仅适用于 PostgreSQL。现在我们运行下面的命令来安装它:

sudo apt install postgresql postgresql-contrib

完成后,使用以下命令启动并启用数据库服务:

sudo systemctl enable postgresql
sudo systemctl start postgresql

现在我们必须使用以下命令为 PostgreSQL 用户设置密码:

sudo passwd postgres

以 PostgreSQL 超级用户身份登录并创建 SonarQube PostgreSQL 数据库和数据库用户:

sudo -Hiu postgres
createuser sonaradmin
createdb -O sonaradmin sonarqubedb
psql
ALTER USER sonaradmin WITH ENCRYPTED password \'changeme\';
\\q
exit

步骤 5. 在 Ubuntu 20.04 上安装 SonarQube。

现在从官方网站下载最新版本的 SonarQube 安装程序:

wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.9.1.44547.zip
sudo unzip sonarqube-8.9.1.44547.zip -d /opt

将提取的设置移动到目录:/opt/sonarqube

sudo mv /opt/sonarqube-8.9.1.44547 /opt/sonarqube

步骤 5. 配置 SonarQube。

现在我们创建一个组作为声纳:

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

接下来,使用您喜欢的文本编辑器打开 SonarQube 配置文件:

nano /opt/sonarqube/conf/sonar.properties

找到以下几行:

#sonar.jdbc.username=
#sonar.jdbc.password=

取消注释并键入我们在上述步骤中创建的 PostgreSQL 数据库用户名和密码,并添加 postgres 连接字符串:

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

接下来,编辑声纳脚本文件并设置 RUN_AS_USER:

RUN_AS_USER=sonar

现在启动 SonarQube:

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

接下来,运行脚本以启动 SonarQube:

./sonar.sh start

要检查 SonarQube 是否正在运行,请输入以下命令:

./sonar.sh status

步骤 6. 配置 Systemd 服务。

现在让我们创建一个systemd文件,以便可以控制 SonarQube 服务。使用以下命令创建文件:

sudo nano /etc/systemd/system/sonar.service

添加以下行:

[Unit]
Description=SonarQube service
After=syslog.target network.target

[Service]
Type=forking

ExecStart=/opt/sonarqube/bin/linux-x86-64/sonar.sh start
ExecStop=/opt/sonarqube/bin/linux-x86-64/sonar.sh stop

User=sonar
Group=sonar
Restart=always

LimitNOFILE=65536
LimitNPROC=4096

[Install]
WantedBy=multi-user.target

保存并关闭文件,您现在可以使用以下两个命令启动和启用 SonarQube 服务:

sudo systemctl start sonarqube
sudo systemctl enable sonarqube

步骤 7. 访问 SonarQube Web 界面。

成功安装后,使用浏览器类型的服务器 IP 和端口 9000 访问 SonarQube:

http://your-server-ip-address:9000

您最终应该会看到一个登录屏幕,您将在其中使用 admin/admin 的默认凭据。身份验证成功后,您将需要更改默认密码。处理完这些后,您会发现自己位于 SonarQube 主页:

sonarqube-dashboardsonarqube-dashboard

感谢您使用本教程在 Ubuntu 20.04 LTS Focal Fossa 系统上安装 SonarQube。如需其他帮助或有用信息,我们建议您查看官方 SonarQube 网站。

相关内容

热门资讯

Windows 11 和 10... Windows 11/10 文件夹属性中缺少共享选项卡 – 已修复 1.检查共享选项卡是否可用 右键...
Radmin VPN Wind... Radmin VPN 是一款免费且用户友好的软件,旨在牢固地连接计算机以创建一个有凝聚力的虚拟专用网...
如何修复 Steam 内容文件... Steam 内容文件锁定是当您的 Steam 文件无法自行更新时出现的错误。解决此问题的最有效方法之...
在 Windows 11 中打... 什么是链路状态电源管理? 您可以在系统控制面板的电源选项中看到链接状态电源管理。它是 PCI Exp...
iPhone 屏幕上有亮绿色斑... iPhone 是市场上最稳定的智能手机之一,这主要归功于专为它们设计的 iOS 操作系统。然而,他们...
事件 ID 7034:如何通过... 点击进入:ChatGPT工具插件导航大全 服务控制管理器 (SCM) 负责管理系统上运行的服务的活动...
QQ浏览器怎么制作简历 QQ浏览器是腾讯公司开发的一款极速浏览器,支持电脑,安卓,苹果等多种终端;更快的浏览体验,更安全的浏...
Hive OS LOLMine... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
Apple Watch Ult... 所有运行 watchOS 7 或更高版本的 Apple Watch 型号都包含一项名为“优化电池充电...
统信UOS每次开机后不直接进入... 统信UOS每次开机后不直接进入系统而是进入到recovery模式 按方向上键选择UOS 20 SP1...