Gitlab是一个开源分布式版本控制系统,由Ruby开发,有管理项目源代码、版本控制、代码复用与查找等功能
我们演示的场景是在Linux系统中安装gitlab,所以需要有一个Linux环境,那我这里的方式是在本地装了一个虚拟机,然后安装了CentOS7的系统,如果你不会在本地安装虚拟机和CentOS7的话,可以参考我的这篇文章:https://blog.csdn.net/wujiangbo520/article/details/119043758,照着一步一步做就可以了
好,上面我们已经准备好了Linux环境,那么我们现在就开始安装gitlab,但是安装gitlab方式有很多种,我们这里采取的是:通过rpm包进行安装
不同版本的Linux对应不同的rpm包
我这里是CentOS7系统,所以需要下载el7版本的GitLab,下载地址是:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7,如下:
下载的文件如下:
然后将文件上传到opt目录中,如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bUcHfoCe-1673165001970)(null)]
然后我们在opt目录下执行下面命令:
yum install -y curl policycoreutils openssh-server openssh-clients
如下:
然后我们可以设置成开机启动:
#启动ssh服务
systemctl start sshd
#ssh服务设置为开机启动
systemctl enable sshd
如下:
然后安装Postfix,Postfix是一个邮件服务器,GitLab发送邮件需要用到:
#安装postfix
yum install -y postfix
#启动postfix并设置为开机启动
systemctl start postfix
systemctl enable postfix
如下:
然后开放ssh以及http服务(80端口):
#开放ssh、http服务
firewall-cmd --add-service=ssh --permanent
firewall-cmd --add-service=http --permanent
如下:
如上图,说明设置成功了
然后关闭防火墙以及开机自动关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
如下:
接下来可以安装gitlab了:
rpm -ivh gitlab-ce-10.0.2-ce.0.el7.x86_64.rpm
如果出现下图,则说明安装成功:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yJuPAmTR-1673165001742)(null)]
安装完gitlab需要修改配置文件,并加载
vim /etc/gitlab/gitlab.rb 进入配置文件
找到下面一行,修改IP:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aydGawat-1673165001686)(null)]
还需要配置发邮件的相关参数:
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]"
gitlab_rails['smtp_password'] = "授权码"
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails[‘gitlab_email_from’] = '[email protected]'
如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZV2jM0ux-1673165001643)(null)]
先按字母【i】进入编辑模式,修改完成后,按【Esc】然后输入【:wq】保存并退出即可
修改好配置文件后,要使用下面命令重新加载一下配置文件,否则不生效
gitlab-ctl reconfigure
执行上面命令后,启动过程时间较长,需要耐心等待,结果如下:
然后执行下面命令查看一下gitlab的状态:
gitlab-ctl status
结果如下:
重启成功后,可以测试一下是否可以正常发邮件,执行下面命令进入控制台:
gitlab-rails console
如下:
然后执行下面命令,发送一封测试邮件,格式:Notify.test_email(‘收件人’, ‘标题’, ‘正文’).deliver_now
Notify.test_email('[email protected]', 'gitlab测试', 'gitlab测试正文').deliver_now
然后查看你的邮箱,就可以收到邮件了:
说明邮件服务是正常的
我们本地浏览器访问:http://192.168.92.128:9001,结果如下:
可以正常看到gitlab的首页,说明我们安装部署成功了,完美
以下是gitlab常用的默认安装目录:
gitlab组件日志路径:/var/log/gitlab
gitlab配置路径:/etc/gitlab/ 路径下有gitlab.rb配置文件
应用代码和组件依赖程序:/opt/gitlab
各个组件存储路径: /var/opt/gitlab/
仓库默认存储路径 /var/opt/gitlab/git-data/repositories
版本文件备份路径:/var/opt/gitlab/backups/
nginx安装路径:/var/opt/gitlab/nginx/
redis安装路径:/var/opt/gitlab/redis
#查看服务状态
gitlab-ctl status
使用控制台实时查看日志
# 查看所有的logs; 按 Ctrl-C 退出
gitlab-ctl tail
# 拉取/var/log/gitlab下子目录的日志
gitlab-ctl tail gitlab-rails
# 拉取某个指定的日志文件
gitlab-ctl tail nginx/gitlab_error.log
#启动关闭gitlab
gitlab-ctl start
gitlab-ctl stop #停止
gitlab-ctl status #查看状态
gitlab-ctl restart #重启
gitlab-ctl reconfigure #更新配置文件
gitlab-ctl help #帮助
gitlab-rake gitlab:check SANITIZE=true --trace 检查gitlab
#gitlab 默认的日志文件存放在/var/log/gitlab 目录下
gitlab-ctl tail #查看所有日志
#禁止 Gitlab 开机自启动
systemctl disable gitlab-runsvdir.service
#启用 Gitlab 开机自启动
systemctl enable gitlab-runsvdir.service
访问地址:http://192.168.92.128:9001/users/sign_in,如下:
点击【Redister】按钮后,出现下面页面:
组相当于团队,在项目开发过程中,每个组有不同的组员和对应的不同的子项目,对项目组用户开放项目的访问
填写相关参数即可:
可见性级别中包含三种:
然后填写相关参数即可:
创建成功了:
用户角色总共有下面几个选项,分别为:
然后本地进行拉取:
然后输入账号wujiangbo,密码:itsource123456,然后可以拉取了:
拉取下来的代码是这样的:
目前里面啥也没有,就只有我们刚刚新建的一个readme.md文件
我们新建一个文件后提交:
提交成功:
然后刷新gitlab查看是否上传成功:
查看提交的文件详情:
没有毛病,是我们提交的文件,测试成功
其实gitlab和我们平时使用的Gitee没有太大的区别,使用方式大同小异,在工作中多用几次就不陌生了
如果本文对你有帮助的话,记得点个赞哦