如何在 CentOS 上设置 Gitlab 以进行持续集成和部署
在此页
- 1。持续集成和持续部署如何工作
- 2。安装阶段
- 3。测试阶段
在本教程中,我将解释如何为 CI(持续集成)/CD(持续部署)操作设置本地 Gitlab 服务器。就像还不知道的人一样,GitLab 是一个作为单个应用程序交付的完整 DevOps 平台。从通过 CI/CD 进行的项目规划和源代码管理,到监控和安全。它允许团队在单个对话中协作和工作,而不是跨多个工具管理多个线程。通过在整个 DevOps 生命周期中提供单一数据存储库、用户界面和授权模型,团队可以显着协作、缩短周期时间并专注于快速构建每个应用程序。
随着每一种业务方法变得越来越大和越来越全面,所有的产品都必须比它们的竞争对手具有更突出的特性。为此,必须引入和开发多个模块,一旦准备就绪,必须迅速推向市场并进行充分的测试和验证。这样,如果 Gitlab 是唯一可以促进向 DevOps 实践过渡的应用程序源,那将真正有助于达到里程碑。
1.持续集成和持续部署如何工作
使用 GitLab 作为代码平台,在软件开发过程的整个生命周期中,可能采取的行动具有逻辑顺序。目标是从实施新产品的第一阶段到在生产中实施它的最后阶段,一致有效地支持团队。下图显示了工作流程的摘要:

由于DevOps涉及的范围比较大,本教程重点介绍在本地搭建Gitlab服务器。我们将使用 Gitlab Community Edition 在我们的本地环境中进行设置。
2. 安装阶段
对于安装阶段,首先我们将首先设置具有先决条件的服务器,假设每个服务器都处于最小服务器配置下。以下是步骤:
[ ~]# yum updateinstall -y curl policycoreutils-python openssh-server
上面的操作是可选的,只是为了保证我们的安装和审核工作顺利进行。安装完成后,您将获得如下屏幕截图
然后根据需要启动postfix服务。下面是命令。
[ ~]# systemctl enable postfix
完成后,您将获得如下屏幕截图
接下来我们需要安装wget来使用GitLab本身提供的自动化脚本进行安装。您也可以使用其他方式进行安装,例如使用 Curl 等,对于本练习,我将使用 wget 来下载脚本。安装 wget 包后,我们将从这里下载脚本并将其放入我们的本地服务器。下面是步骤:
[ ~]# ./script.rpm.sh
过程如下:
接下来,我们将开始准备 GitLab 服务并配置其依赖项。步骤如下:
[ ~]# yum install -y gitlab-ce
一切完成后,您将看到如下所示的进度
伟大的!现在一切就绪,让我们继续安装服务及其依赖项的过程。由于 GitLab 是 DevOps 一起设计的可靠应用程序,因此将配置多个包和配置。因此,所花费的时间比任何正常的服务安装时间都长是正常的。在开始安装之前,让我们确认主 URL 已按预期配置。以下是步骤:-
[ ~]# gitlab-ctl reconfigure
如果进展顺利,你会得到如下截图
现在安装部分的一切都已完成,让我们做最后的工作,让 Gitlab 服务的端口可用。以下是步骤:-
[ ~]# iptables -L -n
下面是截图
现在我们已经完成了 GitLab 安装,现在我们可以开始登录到我们自己的 GitLab 服务器并根据需要配置项目。作为最终结果,您可以通过我们之前配置的 URL 通过浏览器查看您的 GitLab 服务,在我们的例子中是 http://10.124.12.133 。它会自动将您重定向到主页,然后根据需要设置您的初始管理员密码。在这种情况下,默认的管理员用户是 root。以下是示例:-


3. 测试阶段
当一切都完成后,让我们作为一个团队下的用户来定义一个使用 GitLab 作为项目开发存储库的项目。首先让我们创建一个新项目,单击“创建项目”并根据需要定义详细信息。示例如下:-


完成后,您将被重定向到项目的主页,如下所示

现在,作为一个项目,将有几个用户贡献到这个存储库中。要重新创建场景,让我们创建一个用户,稍后将对这个项目做出贡献。返回主页并单击 Add people 。您将被重定向到如下所示的会员创建页面。创建用户,根据需要填写。

现在,完成后返回您的主项目页面,转到设置并单击成员。以下是示例:-

它将带您进入项目成员页面,包括您创建的新用户并定义要赋予用户的角色,如下例所示。对于每个角色和权限的定义,您可以单击阅读更多以获取更多详细信息

完成后,您将看到按照以下示例授予的团队成员列表:-

现在,让我们通过从其他服务器访问并以我们创建的新用户身份登录并创建要提交到项目中的新文件来测试项目工作流贡献。首先,让我们从其他服务器或工作站获取要克隆的项目的 URL。您可以从下面的示例中获取项目 URL 链接:-

一切准备就绪后,让我们登录到测试工作站并克隆项目以供不同用户访问。以下是步骤:-
[ ~]# git clone http://10.124.12.133/root/my-first-project.git
您需要向用户提供克隆项目的权限,使用刚刚创建的新用户,如下所示:-
完成后,将在您的工作站下创建一个具有项目名称的新文件夹。现在进入文件夹并创建一个空文件。这只是为了测试项目可以由任何团队成员从任何工作站贡献,并且项目存储库将始终同步更新。以下是步骤:-
[ my-first-project]# touch myfile.txt
当一切都完成后,让我们提交我们的更改以使其与项目主存储库同步。以下是步骤:-
[ my-first-project]# git push -u origin master
执行上述命令后,过程将显示如下示例:-
伟大的!一切都完成后,让我们回到浏览器并刷新页面。您会注意到用户 shahril 提交的新文件显示在主项目页面上
