开源Linux
开源Linux
微信公众号:开源Linux,www.linuxyz.cn
1 人赞同了该文章
文章目录
卸载gitlab
安装依赖库
安装gitlab-ce
登录gitlab
gitlab日常使用
文件路径
gitlab服务构成
gitlab常用命令
01 卸载gitlab
注意:如果之前没有安装gitlab可以跳过卸载gitlab步骤,直接进入安装依赖库
1、停止gitlab
# 停止gitlab
gitlab-ctl stop
# 查看gitlab状态
gitlab-ctl status
输出结果如果都是down说明停止成功
2、卸载gitlab(注意这里写的是gitlab-ce)
rpm -e gitlab-ce
3、查看gitlab进程
ps -ef | grep gitlab
4、杀掉带有好多…的进程
kill -9 202859
杀掉后,执行ps -ef | grep gitlab确认一遍,还有没有gitlab的进程
5、删除所有包含gitlab文件
find / -name gitlab | xargs rm -rf
02 安装依赖库
# 安装依赖
yum install -y curl policycoreutils openssh-server
# 打开http, https和ssh访问
systemctl enable sshd
systemctl start sshd
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
systemctl reload firewalld
# 安装postfix,用来发送通知邮件
yum install -y postfix
systemctl enable postfix
systemctl start postfix
03 安装gitlab-ce
下载GitLab社区版安装包,下载地址:
gitlab官网:
https://packages.gitlab.com/gitlab/gitlab-ce?utm_source=ld246.com
国内建议使用的清华大学的镜像源下载GitLab,下载地址:
不管学习什么技术,资源都是必不可少的。优质资源会助你一臂之力,让你快速入门。当年我自学使用的优质资源,我也全部共享出来,涵盖Linux、云计算、虚拟化、OpenStack、Docker、K8S、网络、Python、Go等书籍和视频,访问以下链接无套路领取,祝学业有成!
10T学习资源大放送,涵盖Linux、虚拟化、容器、云计算、网络、Python、Go等书籍和视频
清华大学镜像源下载:
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el8
在下载好安装包后,放到自己习惯放的路径下即可,笔者这里放到/usr/local目录
# 进入安装包所在目录
cd /usr/local
# rpm方式安装gitlab,一般出现gitlab的logo图案表示安装完毕了
rpm -ivh gitlab-ce-13.7.2-ce.0.el8.x86_64.rpm
如果访问不了,记得关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
内存要大于4G,内存不足报错:
free -m
需要用到的端口:
# puma['port'] = 8080
# postgresql['port'] = 5432
# redis['port'] = 6379
# sentinel['port'] = 26379
# nginx['listen_port'] = nil
# nginx['listen_https'] = nil
注意新配置的端口号不要被其他进程占用,且要在防火墙设置放开
查看 puma,nginx,redis端口是否被占用,可以使用 命令 gitlab-ctl tail puma 追踪查看启动信息
编辑gitlab配置文件:vim /etc/gitlab/gitlab.rb
注释如下配置
# external_url 'http://gitlab.example.com'
添加如下配置:
# 配置http协议所使用的访问地址,不加端口号默认为80
external_url 'http://192.168.138.8:9080'
#修改默认端口
nginx['listen_port'] = 9080
# 修改puma服务器端口
puma['port']=9081
# 配置时区为 亚洲/上海 东八区时间
gitlab_rails['time_zone'] = 'Asia/Shanghai'
# 后台认证地址
gitlab_workhorse['auth_backend'] = "http://localhost:9081"
注意:因为从GitLab 13.0开始,Puma是默认的Web服务器,并且Unicorn默认情况下处于禁用状态。
执行如下命令查看版本:
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
如果小于13.0版本默认使用的是unicorn,默认为unicorn['port'] = 8080
如果大于13.0版本默认使用的是puma,在/etc/gitlab/gitlab.rb配置中,查看puma的端口是否被占用,默认为puma['port']=8080,修改为服务器没有被占用的端口
puma['port']=9080
如果8080端口被占用,/var/log/gitlab/puma/current会报如下错误:
2021-01-11_12:46:07.24719 Errno::EADDRINUSE: Address already in use - bind(2) for "127.0.0.1" port 8080
/var/log/gitlab/nginx/current会报如下错误:
2021-01-11_12:44:01.18684 2021/01/11 20:43:58 [emerg] 21319#0: still could not bind()
2021-01-11_12:44:01.24463 2021/01/11 20:44:01 [emerg] 21324#0: bind() to 0.0.0.0:8080 failed (98: Address already in use)
2021-01-11_12:44:01.74656 2021/01/11 20:44:01 [emerg] 21324#0: bind() to 0.0.0.0:8080 failed (98: Address already in use)
2021-01-11_12:44:02.24768 2021/01/11 20:44:01 [emerg] 21324#0: bind() to 0.0.0.0:8080 failed (98: Address already in use)
刷新配置,让配置生效:
gitlab-ctl reconfigure
重启服务:
gitlab-ctl restart
04 登录gitlab
进入gitlab网址:http://192.168.138.8:9080, 设置root用户密码,至少8个字符,为了方便记忆,这里设置为root1234
设置好root用户密码,重新登录
登录成功页面如下:
05 gitlab日常使用
文件路径
安装成功后,可以利用rpm -ql gitlab-ce查询其文件安装路径及相关文件路径
# 主要配置文件目录
主配置文件: /etc/gitlab/gitlab.rb
默认安装路径:/opt/gitlab
代码仓库保存位置:/var/opt/gitlab/git-data/repositories
代码仓库备份位置:/var/opt/gitlab/backups
nginx配置文件: /var/opt/gitlab/nginx/conf/gitlab-http.conf
postgresql数据及配置目录:/var/opt/gitlab/postgresql/data
redis默认配置目录:/var/opt/gitlab/redis
各服务数据及配置文件保存路径:/var/opt/gitlab
日志地址:/var/log/gitlab
gitlab服务构成
# Gitlab服务构成
nginx: 静态web服务器
gitlab-shell: 用于处理Git命令和修改authorized keys列表
gitlab-workhorse: 轻量级的反向代理服务器
logrotate:日志文件管理工具
postgresql:数据库
redis:缓存数据库
sidekiq:用于在后台执行队列任务(异步执行)
unicorn:HTTP服务,13.0版本之前GitLab Rails应用是托管在这个服务器上
puma:HTTP服务,13.0版本后GitLab Rails应用是托管在这个服务器上
gitlab常用命令
# 重新编译gitlab的配置
gitlab-ctl reconfigure
# 启动
gitlab-ctl start
# 停止
gitlab-ctl stop
# 重启
gitlab-ctl restart
# 实时查看日志
gitlab-ctl tail
# 实时各个模块日志
gitlab-ctl tail -f redis/postgresql/gitlab-workhorse/logrotate/nginx/sidekiq/unicorn/puma
# 帮助命令
gitlab-ctl --help
# 检查gitlab
gitlab-rake gitlab:check SANITIZE=true --trace
gitlab-ctl stop
gitlab-ctl start
gitlab-ctl status
gitlab-rake gitlab:check
Gitlab 仓库打不开,查看是病毒所致,Bins_Bot_hicore wwel两个进程kill掉