Centos8虚拟机安装gitlab和sonar

安装gitlab

安装gitlab所需要的依赖
yum install -y curl policycoreutils-python openssh-server
启动ssh并设置为开机自启动
systemctl enable sshd
systemctl start sshd

启动postfix
systemctl enable postfix
systemctl start postfix

下载gitlab

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el8/gitlab-ce-12.10.1-ce.0.el8.x86_64.rpm

安装

rpm -i gitlab-ce-12.10.1-ce.0.el8.x86_64.rpm

编辑ip和端口
vim /etc/gitlab/gitlab.rb
填写自己的ip,和端口(因为8080端口设置之后打开页面显示502,所以设置为其他)

在这里插入图片描述

Centos8虚拟机安装gitlab和sonar_第1张图片

如果还不能正常访问
原因1:防火墙未关闭
输入指令,关闭防火墙

systemctl stop firewalld

原因2:更改配置文件
将下面几行注释打开

unicorn['port'] = 8088
postgresql['shared_buffers'] = "256MB"
postgresql['max_connections'] = 200

还有一种情况,你的网络不稳定,多刷新几次,然后等待就好
在这里插入图片描述

Centos8虚拟机安装gitlab和sonar_第2张图片
然后更新配置,重启

gitlab-ctl reconfigure
gitlab-ctl restart

Centos8虚拟机安装gitlab和sonar_第3张图片

安装sonar

安装sonar需要的包
dnf -y install java-11-openjdk postgresql-server postgresql postgresql-contrib unzip

创建sonar用户,因为sonar不能用root用户启动

useradd sonar
passwd sonar

下载安装SonarQube
(也可以在windows上下载,然后通过moba传到虚拟机上)
解压,然后给sonar用户权限

wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.3.1.34397.zip
unzip -d /opt sonarqube-8.3.1.34397.zip
chown -R sonar:sonar /opt/sonarqube-8.3.1.34397/

配置postgresql数据库,并修改修改/var/lib/pgsql/data/pg_hba.conf,

[root@localhost ~]# postgresql-setup initdb
[root@localhost ~]# systemctl enable postgresql
[root@localhost ~]# systemctl start postgresql

Centos8虚拟机安装gitlab和sonar_第4张图片
创建sonar用户和数据库, PostgreSQL安装完后会自动创建postgres用户,使用 su - postgres切换进去

su - postgres
psql
# 创建sonar数据库
create database sonar;
# 创建sonar用户
create user sonar;
# 设置sonar用户密码(否则会导致连不上数据库)
alter user sonar with password '123456';
# 给sonar授权
alter role sonar createdb; alter role sonar superuser; alter role sonar createrole;
# 更改sonar数据库拥有者(这一步是必须的,否则会sonarqube会连接失败)
alter database sonar owner to sonar; 
\q
exit

退回root用户

返回sonar目录,修改配置文件/opt/sonarqube-8.3.1.34397/conf/sonar.properties
在这里插入图片描述
Centos8虚拟机安装gitlab和sonar_第5张图片
修改/etc/sysctl.conf,在文件末尾加入如下配置
vm.max_map_count=262144
fs.file-max=65536
修改/etc/security/limits.conf,在文件末尾加入如下配置
Centos8虚拟机安装gitlab和sonar_第6张图片
配置完成后,重启系统
关闭防火墙

systemctl stop firewalld

使用sonar用户,启动sonar(用户切换时,使用su - 用户名)

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

打开浏览器,192.168.0.103:9000
用户名和密码都是admin
Centos8虚拟机安装gitlab和sonar_第7张图片

gitlab安装参考链接
sonar安装参考链接
记录踩坑
sonar启动时需要java 11版本的,但是后来我因为其他工具需要又装了jdk1.8,然后再次启动sonar时就连不上
解决方法:
到你的sonar安装目录下,更改wqapper.conf的java配置,将你的java-11绝对路径加上去

cd /opt/sonarqube/conf
vim wrapper.conf


#wrapper.java.command=/path/to/my/jdk/bin/java
wrapper.java.command=/usr/lib/jvm/java-11-openjdk-11.0.8.10-0.el8_2.x86_64/bin/java

然后重启sonar

cd /opt/sonarqube/bin/linux-x86-64

./sonar.sh restart

基本上就可以了,不过我的重启之后还有问题,查看web.log文件找问题

cd /opt/sonarqube/logs

vi web.log

在这里插入图片描述
web启动失败,因为有个插件压缩有问题,
进入插件目录删除该插件
cd /opt/sonarqube/extensions/plugins/

找到对应插件,删除后重启sonar
在这里插入图片描述
完成,打开浏览器输入ip:9000
Centos8虚拟机安装gitlab和sonar_第8张图片
ok

你可能感兴趣的:(centos,gitlab)