gitlab简介

GitLab是由GitLabInc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。
GitLab由乌克兰程序员DmitriyZaporozhets和ValerySizov开发,它使用Ruby语言写成。后来,一些部分用Go语言重写。截止2018年5月,该公司约有290名团队成员,以及2000多名开源贡献者。GitLab被IBM,Sony,JülichResearchCenter,NASA,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,SpaceX等组织使用

应用特点

1.Web框架使用RubyonRails。
2.基于MIT代码发布协议。
3.需要gitolite协同工作。

历史

最初,该产品命名为GitLab,是完全免费的开源软件,按照MIT许可证分发。
2013年7月,产品被拆分为:GitLabCE(社区版)和GitLabEE(企业版),当时,GitLabCE和GitLabEE的许可仍然是根据MIT许可分发的免费和开源软件。
2014年2月,GitLab宣布采用开放核心业务模式。GitLabEE设置在专有许可证下,并且包含CE版本中不存在的功能。
2015年7月,公司又筹集了150万美元的种子基金。截至2015年的客户包括阿里巴巴集团,IBM和SpaceX。
2015年9月,GitLab从KhoslaVentures筹集了400万美元的A系列资金。
2016年7月,GitLabCEO确认了公司的开放核心功能。
2016年9月,GitLab从AugustCapital和其他公司筹集了2000万美元的B系列资金。
Gitlab于2017年1月31日发布一系列紧急通告称,位于荷兰的系统管理员因操作失误而删除了包含310GB产品数据的文件夹,在取消删除操作后仅剩下4.5GB。运维人员之后检查发现,网站宣称和配备的多项备份措施均未正常运作或难以利用。Gitlab在YouTube直播了恢复数据的过程。网站最终丢失了最后6小时的数据库数据(包括问题、合并请求、评论、片段等,不含代码库)。

git

git(/ɡɪt/,音频)是一个分布式版本控制软件,最初由林纳斯·托瓦兹(LinusTorvalds)创作,于2005年以GPL发布。最初目的是为更好地管理Linux内核开发而设计。应注意的是,这与GNUInteractiveTools(一个类似NortonCommander界面的文件管理器)有所不同。
git最初的开发动力来自于BitKeeper和Monotone。git最初只是作为一个可以被其他前端(比如Cogito或Stgit)包装的后端而开发的,但后来git内核已经成熟到可以独立地用作版本控制。很多著名的软件都使用git进行版本控制,其中包括Linux内核、X.Org服务器和OLPC内核等项目的开发流程。(上述引用百度百科)

安装gitlab

安装依赖

sudo apt update
sudo apt install ca-certificates curl openssh-server postfix

安装GitLab

cd /tmp
curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh

检查脚本
less /tmp/script.deb.sh
(因为我是小白,所以也看不大懂,那么就下一步吧)
运行脚本
sudo bash /tmp/script.deb.sh
自动执行完成后输入
sudo apt install gitlab-ce
这是安装必要的组件

中途安装时,报错E: Unable to locate package gitlab-ce
问了度娘,可能是源有问题,于是又修改了脚本文件
sudo vim /etc/apt/sources.list.d/gitlab_gitlab-ce.list
将里面的源,更改为阿里云的
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu/ focal-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

这只是准备工作,千万,千万,千万,别掉以轻心,觉得这就搞定了,后面还有问题。

看一下防火墙是否开启

输入sudo ufw status


To                         Action      From
--                         ------      ----
80                         ALLOW       Anywhere                  
22                         ALLOW       Anywhere                  
80 (v6)                    ALLOW       Anywhere (v6)             
22 (v6)                    ALLOW       Anywhere (v6)   
————————————————
版权声明:本文为CSDN博主「小黑ii」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_35844177/article/details/106876923


这是一个博主的防火墙状态,当前规则允许SSH流量通过,但对其他服务的访问受到限制。由于GitLab是一个Web应用程序,我们应该允许HTTP访问。因为我们将利用GitLab从Let’s Encrypt请求和启用免费TLS / SSL证书的功能,所以我们也允许HTTPS访问。(他允许Https访问,因为我没有https证书,所以我设置为http协议,直接把防火墙直接关闭)

编辑GitLab配置文件

sudo vim /etc/gitlab/gitlab.rb这个命令,是开始编辑Gitlab配置文件
进入配置文件后,按一下i,进入编辑模式,找到这行内容
external_url 'https://example.com' // 此处修改为您的域名或ip地址
找到后,把地址改为需要设置的域名或IP
按一下Esc 输入:wq
保存并退出
这个设置,是让咱们的Gitlab登录的地址,改为咱们想要的地址

设置完成后,输入
sudo gitlab-ctl reconfigure重新配置Gitlab
让刚才配置的Gitlab配置文件生效
让服务重启一下
sudo gitlab-ctl restart
按理来说,重启完成之后,我们就可以从浏览器登陆Gitlab了,但是!!!!!我又遇到问题了,502了。。。。
在这里插入图片描述
看见了他!!!!!对!!!!就是他!!!
对于小白来说,又要开始百度了,有说配置文件的问题,也有说内存的问题,都说的好有道理,开始跟着改配置文件,增大内存(内存确实很重要,本来搭建虚拟机分配了2个G,发现都用完了,好吧,设置成4G)但是!!!!还是502没有恢复,这对于一个菜鸡来说,很受打击,为啥还是不行,这个时候,我的师傅终于看不下去了,过来帮我看一下,说看一下日志,好么,不看日志不知道,一看日志,为啥日志的时间不对,师傅开始修改服务器的时间,我感觉到了!!!!
能否去把502问题处理掉呢,时间一改,服务一重启,wc!!!终于进入登陆页面了!!!感人!感动!终于把Gitlab部署好了。
废话说了这么多,希望大家少踩坑。
第一次发文,也希望大家见谅。
马上就是普天同庆的十一了,祝大家十一过的愉快,中国永远NB!

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐