1、什么是gitlab
GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。
GitLab和GitHub一样属于第三方基于Git开发的作品,免费且开源(基于MIT协议),与Github类似,可以注册用户,任意提交你的代码,添加SSHKey等等。不同的是,GitLab是可以部署到自己的服务器上,数据库等一切信息都掌握在自己手上,适合团队内部协作开发,你总不可能把团队内部的智慧总放在别人的服务器上吧?简单来说可把GitLab看作个人版的GitHub。
2、gitlab的搭建
安装依赖包
yum install -y policycoreutils openssh-server openssh-clients postfix
启动ssh并设为开机自启动
systemctl enable --now sshd
启动postfix并设为开机自启动
systemctl enable --now postfix
开放ssh以及http服务,然后重新加载防火墙列表(不建议关闭防火墙,跳过此步)
firewall-cmd --add-service=ssh --permanent
firewall-cmd --add-service=http --permanent
firewall-cmd --reload
下载gitlab包和储存库
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm --no-check-certificate
安装:
rpm -i gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm
修改gitlab配置
vi /etc/gitlab/gitlab.rb
修改gitlab访问地址和端口,默认为80,我们改为82 external_url ‘http://192.168.0.22:82’
nginx[‘listen_port’] = 82
重载配置及启动
gitlab-ctl reconfigure(需要等待一段时间)
gitlab-ctl restart
如果报错
则在/etc/gitlab/gitlab.rb添加
letsencrypt['enable'] = false
把端口添加到防火墙
firewall-cmd --zone=public --add-port=82/tcp --permanent firewall-cmd --reload