CentOS7 安装 SonarQube
安装 SonarQube
环境
系统
CentOS 7
数据库
postgresql 10
系统配置
查看系统配置
sysctl vm.max_map_count
sysctl fs.file-max
ulimit -n
ulimit -u
如果不满足需求,使用下面命令修改(下面是最低参数配置)
sysctl -w vm.max_map_count=262144
sysctl -w fs.file-max=65536
ulimit -n 65536
ulimit -u 4096
需要注意,使用上边的命令修改系统参数,重启后将失效
如果 vm.max_map_count 达不到要求,在 /etc/sysctl.conf 添加以下内容,将永久修改配置
vm.max_map_count=262144
安装数据库
安装 参考官网安装步骤
内网安装需要提前下载 RPM 包
pgdg-redhat-repo-latest.noarch.rpm
postgresql10-10.13-1PGDG.rhel7.x86_64.rpm
postgresql10-libs-10.13-1PGDG.rhel7.x86_64.rpm
postgresql10-server-10.13-1PGDG.rhel7.x86_64.rpm
安装步骤
# 使用本地 RPM 包安装数据库
rpm -ivh ./*
# 初始化数据库
/usr/pgsql-10/bin/postgresql-10-setup initdb
# 设置为系统服务并启动
systemctl enable postgresql-10
systemctl start postgresql-10
编辑 /var/lib/pgsql/10/data/pg_hba.conf 将其中两行的 ident 改成 md5
md5 是密码认证
修改前:
host all all 127.0.0.1/32 ident
host all all ::1/128 ident
修改后:
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
重启数据库,此时数据库的安装结束
systemctl restart postgresql-10.service
创建 sonarqube 数据库
登陆
# 切换 postgres 用户
su - postgres
# 登陆
psql
创建用户
-- 创建用户 sonarqube,密码 sonarqube
CREATE USER sonarqube WITH PASSWORD 'sonarqube';
-- 创建数据库 sonarqube
CREATE DATABASE sonarqube OWNER sonarqube ENCODING 'UTF8';
-- 授权
GRANT ALL PRIVILEGES ON DATABASE sonarqube TO sonarqube;
创建完毕,执行 \q 退出
\q
验证一下创建的用户是否可用
# -h host
# -p 端口
# -d 数据库
# -U 用户
# -W 强制密码提示
psql -h 127.0.0.1 -p 5432 -d sonarqube -U sonarqube -W
输入密码,登录成功,数据库创建完毕
安装 JDK
sonarqube-8.3.1.34397 需要 jdk 11+
/opt/jdk 下解压 jdk-14.0.1_linux-x64_bin.tar.gz
创建用户和用户组
sonarqube 必须使用非 root 用户
groupadd sonarqube
useradd -g sonarqube sonarqube
安装 SonarQube
创建安装目录,并授权
mkdir /opt/sonarqube
chown sonarqube:sonarqube /opt/sonarqube
切换用户
su sonarqube
sonarqube-8.3.1.34397.zip 解压至 /opt/sonarqube 目录
修改数据库配置 ${sonarqube_install}/conf/sonar.properties,根据实际修改
sonar.jdbc.url=jdbc:postgresql://localhost:5432/sonarqube?useUnicode=true&characterEncoding=utf8
sonar.jdbc.username=sonarqube
sonar.jdbc.password=sonarqube
默认端口为 9000
在 ${sonarqube_install}/conf/sonar.properties 中修改端口
sonar.web.port=9001
注意,因为用的非 root 用户,所以不能使用 1024 以下的端口
注意,如果使用域名或使用了 Nginx,要在控制台中设置真实的访问地址,位置在 配置-->配置-->通用配置-->通用-->Server base URL
接下来,将 sonarqube 设置为系统服务
创建文件 /etc/systemd/system/sonarqube.service
ExecStart 根据实际情况修改 jdk 目录和 sonar-application-{version}.jar 文件路径
[Unit]
Description=SonarQube service
After=syslog.target network.target
[Service]
Type=simple
User=sonarqube
Group=sonarqube
PermissionsStartOnly=true
ExecStart=/bin/nohup /opt/java/bin/java -Xms32m -Xmx32m -Djava.net.preferIPv4Stack=true -jar /opt/sonarqube/lib/sonar-application-7.4.jar
StandardOutput=syslog
LimitNOFILE=65536
LimitNPROC=8192
TimeoutStartSec=5
Restart=always
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
设置开机启动
systemctl enable sonarqube.service
启动服务
systemctl start sonarqube.service
修改主机名
hostnamectl set-hostname sonarqube
日志在 ${sonarqube_install}/logs 目录下
安装中文语言包(可选)
中文插件 sonar-l10n-zh-plugin-8.3.jar 放在 ${sonarqube_install}/extensions/plugins 目录,重启 sonarqube 即可
CentOS7 安装 SonarQube的更多相关文章
- centos7安装sonarqube与使用
https://www.cnblogs.com/mascot1/p/11179767.html https://blog.csdn.net/superbfly/article/details/1039 ...
- centos7搭建sonarqube环境+jenkins部署全流程
一.简介sonarqube是一个用于代码质量管理的开源平台,用于管理源代码的质量 不遵循代码标准sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写.潜在的 ...
- HP服务器 hp 360g5 centos7安装问题
HP服务器 hp 360g5 centos7安装问题 一 :启动盘无法识别硬盘 1.进入安装光盘,用上下键选择安装centos--Install Centos7(注意不可按Enter键),如图: 2 ...
- CentOS7 安装Mono及Jexus
CentOS7安装Mono及Juxes 1 安装Mono 1.1 安装yum-utils 因为安装要用到yum-config-manager,默认是没有安装的,所以要先安装yum-utils包.命令如 ...
- CentOS7安装mysql提示“No package mysql-server available.”
针对centos7安装mysql,提示"No package mysql-server available."错误,解决方法如下: Centos 7 comes with Mari ...
- CentOS7安装Oracle 11gR2 安装
概述 Oracle 在Linux和window上的安装不太一样,公司又是Linux系统上的Oracle,实在没辙,研究下Linux下Oracle的使用,oracle默认不支持CentOS系统安装,所以 ...
- Centos7安装完毕后重启提示Initial setup of CentOS Linux 7 (core)的解决方法
问题: CentOS7安装完毕,重新开机启动后显示: Initial setup of CentOS Linux 7 (core) 1) [x] Creat user 2) [!] License i ...
- centos7安装eclipse
centos7安装eclipse Eclipse是一个集成开发环境(IDE),包含一个基工作区和定制环境的可扩展插件系统.大部分使用 Java 编写,Eclipse 可以用来开发应用程序.通过各种插件 ...
- CentOS7安装mongoDB数据库
CentOS7安装mongoDB数据库 时间:2015-03-03 16:45来源:blog.csdn.net 作者:进击的木偶 举报 点击:8795次 mongoDB是目前发展比较好的NOSQL数据 ...
随机推荐
- Python之常用模块学习(二)
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...
- saver 的保存与恢复
模型保存,先要创建一个Saver对象:saver=tf.train.Saver(), max_to_keep 是用来设置保存模型的个数,默认为5,即保存最近的五个模型,saver=tf.train.S ...
- bzoj4716假摔
bzoj4716假摔 题意: 给出一个矩阵,求这个矩阵中权值和第k小的长在xmin到n之间,宽在ymin到m之间的子矩阵.n,m≤1000,k≤250000. 题解: 首先求出长为xmin,宽为ymi ...
- 题解 洛谷 P4546 【[THUWC2017]在美妙的数学王国中畅游】
首先发现有连边和删边的操作,所以我们肯定要用\(LCT\)来进行维护. 接下来考虑如何进行\(LCT\)上的信息合并. \(f=1\),则函数为\(f(x)=sin(ax+b)\) \(f=2\),则 ...
- 题解 洛谷 P1552 【[APIO2012]派遣】
根据题意,我们不难发现忍者之间的关系是树形结构. 发现答案的统计只是在该节点的子树中,因此我们考虑通过树形\(DP\)来解决问题. 从叶子节点开始,从下往上考虑,因为一个节点的最优答案只与他的领导力和 ...
- Kubernetes实战总结 - DevOps实现
一.概述 Git:一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. Jenkins:一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作. M ...
- 前端学习(二):head标签
进击のpython ***** 前端学习--head标签 head标签中的相关标签,是看不见摸不着的,仅仅是对应用于网页的一些基础信息(元信息) 前面说的是青春版,完整的head应该是这样的 !< ...
- 【新生学习】深度学习与 PyTorch 实战课程大纲
各位20级新同学好,我安排的课程没有教材,只有一些视频.论文和代码.大家可以看看大纲,感兴趣的同学参加即可.因为是第一次开课,大纲和进度会随时调整,同学们可以随时关注.初步计划每周两章,一个半月完成课 ...
- python基础--14大内置模块(下)
(9)正则表达式和re模块(重点模块) 在我们学习这个模块之前,我们先明确一个关系.模块和实际工作的关系. 1)模块和实际工作时间的关系 1.time模块和时间是什么关系?time模块和时间本身是没有 ...
- 使用 Azure Blob Stoage 实现一个静态文件服务器
什么是Azure Blob Stoage Azure Blob Stoage 是微软Azure的对象存储服务.国内的云一般叫OSS,是一种用来存储非结构化数据的服务,比如音频,视频,图片,文本等等.用 ...