CentOS 7上安装SonarQube10

在CentOS 7上安装SonarQube10并使用PostgreSQL作为数据库

⚠️ 重要注意事项

  1. 不再支持:MySQL 数据库(从 SonarQube 7.9 开始已移除)

  2. 数据库驱动:不需要手动安装,SonarQube 已包含

  3. 字符集:所有数据库必须使用 UTF-8 编码

  4. 权限:需要为 SonarQube 创建专用数据库用户

安装SonarQube(之前需要安装postgreSql)

安装SonarQube

yum install -y epel-release

创建sonarqube用户

sudo useradd sonarqube

创建系统用户和组

useradd -r -s /bin/bash sonarqube

sudo groupadd sonarqube

删除用户和组(如果需要)

sudo userdel -r sonarqube

sudo groupdel -f sonarqube

安装unzip(如果没有)

sudo yum install -y unzip

解压

unzip sonarqube-10.0.0.68432.zip

mv sonarqube-10.0.0.68432 sonarqube

设置权限

sudo chown -R sonarqube:sonarqube /opt/sonarqube

sudo chmod -R 755 /opt/sonarqube

配置系统参数

sudo vi /etc/security/limits.conf

sonarqube soft nofile 65536

sonarqube hard nofile 65536

sonarqube soft nproc 4096

sonarqube hard nproc 4096

修改sysctl配置

sudo vi /etc/sysctl.conf

vm.max_map_count=262144

fs.file-max=65536

应用配置:

sudo sysctl -p

创建Systemd服务

创建服务文件

sudo vi /etc/systemd/system/sonarqube.service

添加以下内容:

Unit

Description=SonarQube service

After=syslog.target network.target postgresql-14.service

Service

Type=forking

User=sonarqube

Group=sonarqube

PermissionsStartOnly=true

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

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

ExecReload=/opt/sonarqube/bin/linux-x86-64/sonar.sh restart

LimitNOFILE=65536

LimitNPROC=4096

Restart=on-failure

Install

WantedBy=multi-user.target

启动SonarQube

重新加载systemd

sudo systemctl daemon-reload

启动SonarQube服务

sudo systemctl start sonarqube

设置开机自启

sudo systemctl enable sonarqube

检查状态

sudo systemctl status sonarqube

查看日志

sudo tail -f /opt/sonarqube/logs/sonar.log

给sonarqube用户添加密码

sudo passwd sonarqube

wa123456

端口

sonar.web.port=9000

访问SonarQube

http://your-server-ip:9000

内存不足问题

编辑 vim /opt/sonarqube/conf/sonar.properties:

sonar.web.javaOpts=-Xmx2G -Xms128m -XX:+HeapDumpOnOutOfMemoryError

编辑服务文件

sudo systemctl edit sonarqube

添加以下内容来放宽启动限制

Service

StartLimitInterval=0

StartLimitBurst=0

Unit

StartLimitIntervalSec=0

Java not found. Please make sure that the environmental variable SONAR_JAVA_PATH 错误处理

编辑sonar.sh文件

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

在顶部添加

SONAR_JAVA_PATH="$JAVA_HOME/bin/java"

登录 : http://192.168.88.128:9000/

默认用户名 admin

默认密码 admin

修改密码 :admin@123

相关推荐
HLC++8 小时前
Linux的进程间通信
android·linux·服务器
二宝哥8 小时前
CentOS 7.9 系统下 Redis 5.0.4 单机安装与源码编译安装指南
redis·centos
groundhappy11 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
通信小小昕12 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu
张小姐的猫13 小时前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
栩栩云生14 小时前
AI 写代码犯的错,早被写进了错题集
linux·安全·ai编程
imc.1115 小时前
linux基础IO
linux·运维·服务器
BelongPanda17 小时前
Linux Nginx 纯手动 Let‘s Encrypt 泛域名证书配置教程
linux·nginx
酷可达拉斯17 小时前
Linux操作系统-shell编程(0)
linux·运维·服务器·python·云计算
2301_7779983417 小时前
Linux中断机制:操作系统如何高效运行
linux·运维·服务器