Centos7安装Gitlab
下载安装包
# 清华大学开源软件镜像站 https://mirrors.tuna.tsinghua.edu.cn/
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.4.2-ce.0.el7.x86_64.rpm --no-check-certificate
安装相关组件
yum install systemd curl policycoreutils-python openssh-server postfix -y
运行邮件服务
systemctl enable postfix
systemctl start postfix
关闭防火墙和selinux
systemctl stop firewalld
# 临时关闭
setenforce 0
安装gitlab-ce
rpm -ivh gitlab-ce-14.4.2-ce.0.el7.x86_64.rpm
修改配置文件
vim /etc/gitlab/gitlab.rb
...
# 修改访问URL
external_url 'http://10.4.7.200:8181'
...
# 修改时区
gitlab_rails['time_zone'] = 'Asia/Shanghai'
重置Gitlab配置
(可理解为初始化吧)
gitlab-ctl reconfigure
启动Gitlab
gitlab-ctl start
安装结束...稍等一会访问URL
常用命令
gitlab-ctl start:启动全部服务
gitlab-ctl restart:重启全部服务
gitlab-ctl stop:停止全部服务
gitlab-ctl reconfigure:使配置文件生效(一般修改完主配置文件/etc/gitlab/gitlab.rb,需要执行此命令)
gitlab-ctl show-config :验证配置文件
gitlab-ctl uninstall:删除gitlab(保留数据)
gitlab-ctl cleanse:删除所有数据,从新开始
gitlab-ctl tail 查看服务的日志
Gitlab常用组件
nginx:静态Web服务器
gitlab-shell:用于处理Git命令和修改authorized keys列表,我们的gitlab是以Git做为最层的,你操作实际上最后就是调用gitlab-shell命令进行处理。
gitlab-workhorse:轻量级的反向代理服务器
logrotate:日志文件管理工具
postgresql:数据库
redis:缓存数据库
sidekiq:用于在后台执行队列任务(异步执行)
unicorn:GitLab Rails应用是托管在这个服务器上面的
Gitlab目录解释
/var/opt/gitlab/git-data/repositories:库默认存储目录
/opt/gitlab: 应用代码和相应的依赖程序
/var/opt/gitlab:gitlab-ctl reconfigure命令编译后的应用数据和配置文件,不需要人为修改配置
/etc/gitlab: 配置文件目录
/var/log/gitlab:此目录下存放了gitlab各个组件产生的日志
/var/opt/gitlab/backups/:备份文件生成的目录
卸载Gitlab
# 停止服务
gitlab-ctl stop
# 卸载gitlab
rpm -e gitlab-ce
# 强杀守护进程
ps -ef|grep gitlab|grep runsvdir|awk -F ' ' '{print $2}'|xargs kill -9
# 删除gitlab相关文件
find / -name *gitlab* | xargs rm -rf
参考文档:gitlab介绍与操作 - 游走在边缘的人 - 博客园 (cnblogs.com)