📋 前言
世界于你而言,毫无意义和目的,却又充满随心所欲的幻想,但又有谁知,也许就在这闷热令人疲倦的正午,那个陌生人,提着满篮奇妙的货物,路过你的门前,他响亮地叫卖着,你就会从朦胧的梦中惊醒,走出房门,迎接命运的安排。
——泰戈尔《爱者之贻》

GitLab是一个基于Web的Git仓库管理工具,它提供了一整套用于代码版本控制、代码托管、持续集成、项目管理和协作的功能。
GitLab最初于2011年由Dmitriy Zaporozhets和Valery Sizov创建,是一个开源项目。它允许开发团队在一个中心化的位置管理代码仓库,并提供了一系列工具和功能来帮助团队协作开发软件项目。
以下是GitLab的一些主要特点:
总的来说,GitLab是一个功能丰富的代码托管和项目管理平台,它的目标是帮助开发团队更高效地协作和交付软件。无论是小型团队还是大型企业,GitLab都提供了一套完整的工具和功能来支持软件开发的整个生命周期。
搭建一个自己专属的gitlab,将自己的代码库全部上传之后,就可以随时随地访问自己的代码。并且gitlab并非只能作为代码仓库,常见格式的文件都能上传并支持在线预览。
根据官网介绍,云耀云服务器L实例是新一代开箱即用、面向中小企业和开发者打造的全新轻量应用云服务器。云耀云服务器L实例提供丰富严选的应用镜像,实现应用一键部署,助力客户便捷高效的在云端构建电商网站、Web应用、小程序、学习环境、各类开发测试等。
有非常多的优势,比如不卡顿,上手简单等等等。
对我们这种小白来讲,这些可以适当了解一下,我们只需要知道它是一台云服务器就足够了。
OK,了解了这两个主角之后,我们直接开干。
这个不再展开,如果你还没有服务器,先去买服务器吧骚年!!!
注意:本文使用的云服务器配置如下:



可以选择控制台自己的远程登录,也可以自行使用SSH工具进行远程登录。
注意:默认用户名为root,如果不知道登录密码,可以先关机然后进行重置密码后再进行登录。
从gitlab官网了解到,gitlab安装对于服务器的最低要求为:
显然,博主购买的这台服务器配置达不到要求,于是我们需要添加swap分区,它是针对内存不足情况的极其重要的最后手段。
添加swap分区步骤:
检查系统是否已经存在swap分区
sudo swapon --show
如果没有任何输出,则证明没有swap分区,如下图所示:

创建一个用于swap分区的文件
sudo mkdir -v /var/cache/swap
cd /var/cache/swap
sudo dd if=/dev/zero of=swapfile bs=1K count=4M

将新建的文件转换为swap文件
sudo mkswap swapfile

启用swap分区
sudo swapon swapfile
使用swapon命令进行验证
swapon -s
正常的话会显示swap分区的信息,如下图所示:
如果需要禁用swap,可以使用
sudo swapoff swapfile
将swap分区设置为开机自动加载
echo "/var/cache/swap/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab

调整swap分区的swappiness
swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。正常情况这个值默认为60。以防万一,我们查看一下。
a. 查看当前swap分区swappiness
cat /proc/sys/vm/swappiness
比如博主这里,这个值就为0.

如果这个值为0,需要修改为60,或者80都行。
b. 修改swappiness的值
sudo sysctl vm.swappiness=60

这种修改方式只在本次启动运行过程中有效,重启后就会变为原来的默认值,如果需要长期生效,需要在/etc/sysctl.conf文件中添加vm。swappiness = 60(如果文件末尾有此项,将其值改为60)
sudo vim /etc/sysctl.conf

sudo apt update
sudo apt-get upgrade
sudo apt-get install curl openssh-server ca-certificates postfix
如果中途跳出需要选择的选项,直接选择默认项回车即可。
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh |sudo bash
sudo apt-get install gitlab-ce

运行之后需要等待一会。
安装成功的界面如下图所示:

出现这个界面,我们这一步的操作就完成了
GitLab的配置文件位于 /etc/gitlab/gitlab.rb ,我们需要编辑此文件来修改gitlab的相关配置。在本文中使用vim编辑,如果没有安装vim,执行命令sudo apt install vim进行安装。
进入配置文件
sudo vim /etc/gitlab/gitlab.rb
修改external_url字段,其原始值为external_url 'http://gitlab.example.com'将其修改为IP+端口号的形式,例如external_url 'http://123.45.678.90:80',要将123.45.678.90替换为你自己服务器的公网IP。
运行以下命令以启动GitLab:
sudo gitlab-ctl stop //--停止服务
sudo gitlab-ctl reconfigure //--启动服务
sudo gitlab-ctl restart //--重启所有gitlab组件
sudo gitlab-ctl start //--启动所有gitlab组件
注意:如果中途执行sudo gitlab-ctl reconfigure有卡住很长时间不动的情况,Ctrl+C退出之后重新执行上述命令。配置好之后会出现 gitlab Reconfigured! 提示。如下图所示:

配置成功之后接着执行上边的后两句命令。

执行完成之后,GitLab就已经安装配置并成功启动,这时我们在电脑的浏览器中输入刚刚GitLab配置文件中external_url的链接,就能够成功访问到GItLab的主页了。

管理员账户名:root
管理员账户密码:默认密码在/etc/gitlab/initial_root_password

如需修改默认密码,请自行搜索修改密码方式。

使用top查看内存使用情况,如果内存剩余过少,则可能是swap分区使用率过低,物理内存不足导致,重新检查2.2中的所有步骤是否执行成功。查看swap分区swapiness的值是否为0,将其修改为60或者80。
总结:到这里,使用华为云耀云服务器L搭建GitLab代码仓库就完成了。通过本文,我们详细介绍了如何在云服务器上搭建GitLab,并为团队提供一个高效、安全的代码托管和协作平台。我们从云服务器的选择和配置开始,逐步引导您完成了GitLab的安装和设置过程。通过搭建自己的GitLab实例,您可以拥有完全的控制权,并确保您的代码在受保护的环境中得到管理和维护。
如果您在设置过程中遇到任何问题,可以联系博主寻求技术支持,觉得有用就来个三连支持一下吧!!!