环境:centos7
第一步:首先确定soanr稳定维护版本
第二步:查询对应的环境
链接:Prerequisites and Overview | SonarQube Docs
第三步:环境安装 参考链接:(47条消息) Centos 7 安装 OpenJDK 11 两种方式_蒜丶的博客-CSDN博客_centos7安装jdk11
第四步:安装postgresql 数据库,并启动,我是安装postgresql+sonar到同一个服务器 参考链接:在CentOS 7上安装&配置PostgreSQL 12 - Ken的杂谈
验证: netstat -tunpl | grep 5432
第五步:下载安装sonarQube
第六步:sonar配置文件
unzip sonarqube-8.8.9.56886.zip -d /usr/local
ln -sv /usr/local/sonarqube-8.8.9.56886 /usr/local/sonarqube
# 配置sonar
vim /usr/local/sonarqube/conf/sonar.properties
sonar.jdbc.username=sonar
# 自己新建的用户,并分配管理员权限
sonar.jdbc.password=sonar
# 对应密码
......
#sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube?currentSchema=my_schema
sonar.jdbc.url=jdbc:postgresql://localhost/sonar
# soanr是新建的仓库名,给sonar使用
注意:如果启动有问题,可以尝试使用 sonar.jdbc.url=jdbc:postgresql://127.0.0.1/sonar
第七步:启动sonar
# 建立用户
useradd sonar
# 授权文件
chown -R sonar.sonar /usr/local/sonarqube-8.8.9.56886
chown -R sonar.sonar /usr/local/sonarqube
# 启动
su - sonar -c "/usr/local/sonarqube/bin/linux-x86-64/sonar.sh start"
# 停止
su - sonar -c "/usr/local/sonarqube/bin/linux-x86-64/sonar.sh stop"
# 重启
su - sonar -c "/usr/local/sonarqube/bin/linux-x86-64/sonar.sh restart"
验证: netstat -tunpl | grep 9000
第八步:访问浏览器, http://ip:9000
第一次登陆,使用admin 登陆,密码:admin
【报错一】:elasticsearch 报错
es报错日志:/usr/local/sonarqube/logs/es.log
2022.07.10 11:51:34 ERROR es[][o.e.b.Bootstrap] node validation exception [1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch. bootstrap check failure [1] of [1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535] 2022.07.10 11:51:34 INFO es[][o.e.n.Node] stopping ... 2022.07.10 11:51:34 INFO es[][o.e.n.Node] stopped 2022.07.10 11:51:34 INFO es[][o.e.n.Node] closing ... 2022.07.10 11:51:34 INFO es[][o.e.n.Node] closed
【报错二】: web访问失败,端口启动失败
保存日志:/usr/local/sonarqube/logs/web.log
ERROR web[][o.s.s.p.PlatformImpl] Web server startup failed java.lang.IllegalStateException: Fail to connect to database ...... Caused by: java.sql.SQLException: Cannot create PoolableConnectionFactory (致命错误: 用户 "sonar" Ident 认证失败) ......
参考链接:psql: 致命错误: 用户 "postgres" Ident 认证失败 - JavaShuo
重启后,正常访问即可。。。