如何在CentOS 8上安装和配置GitLab CE

如何在CentOS 8上安装和配置GitLab CE

GitLab是基于GitLab Inc.开发的基于Rails的开源资源库管理器。它是基于Web的git资源库管理器,它使您的团队可以在编码,测试和部署应用程序方面进行协作。 GitLab提供了多种功能,包括Wiki,问题跟踪,代码审查和活动供稿。

GitLab Inc提供4种产品:

  • Gitlab CE(社区版)-自托管且免费; 社区论坛的支持。
  • Gitlab EE(企业版)-自托管和付费; 带有附加功能。
  • GitLab.com-SaaS和免费。
  • GitLab.io-由GitLab Inc管理的私有GitLab实例。

在本教程中,我们将向您展示如何在CentOS 8服务器上安装GitLab CE。 我们将使用GitLab提供的“ omnibus”软件包安装GitLab CE,对GitLab进行一些基本配置,并测试以创建新的GitLab项目。

先决条件

对于本指南,我们将在具有4GB RAM,30GB可用磁盘空间和2个CPU的最新版本的CentOS 8服务器上安装GitLab CE。

我们将要做什么?

  • 安装软件包依赖项
  • 添加存储库并安装GitLab CE(社区版)
  • 生成SSL Letsencrypt和DHPARAM证书
  • 为GitLab启用Nginx HTTPS
  • 配置防火墙
  • GitLab安装后
  • 测验

第1步-安装软件包依赖项

首先,我们将安装GitLab所需的一些软件包依赖项,包括OpenSSH软件包和Postfix。

使用下面的dnf命令安装GitLab CE的软件包依赖项。

sudo dnf -y install curl policycoreutils openssh-server openssh-clients postfix

完成所有安装后,启动SSH和Postfix服务。

systemctl start sshd
systemctl start postfix

接下来,将两个服务都添加到系统引导中。

systemctl enable sshd
systemctl enable postfix

结果,软件包依赖项的安装已完成。

安装GitLab安装的软件包依赖关系

第2步-添加存储库并安装GitLab

在这一步中,我们将正式的GitLab存储库添加到我们的CentOS 8系统并安装GitLab CE软件包。

使用下面的安装程序脚本添加GitLab存储库。

curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

完成所有步骤后,您将获得以下结果。

Generating yum cache for gitlab_gitlab-ce...
Importing GPG key 0x51312F3F:
 Userid     : "GitLab B.V. (package repository signing key) <[email protected]>"
 Fingerprint: F640 3F65 44A3 8863 DAA0 B6E0 3F01 618A 5131 2F3F
 From       : https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey
Importing GPG key 0xF27EAB47:
 Userid     : "GitLab, Inc. <[email protected]>"
 Fingerprint: DBEF 8977 4DDB 9EB3 7D9F C3A0 3CFC F9BA F27E AB47
 From       : https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey/gitlab-gitlab-ce-3D645A26AB9FBD22.pub.gpg
Generating yum cache for gitlab_gitlab-ce-source...
The repository is setup! You can now install packages.

要验证GitLab存储库,请运行以下dnf命令。

sudo dnf repolist

您将在列表中找到GitLab存储库。

添加GitLab存储库

接下来,使用以下命令安装GitLab CE软件包

sudo dnf install gitlab-ce -y

完成所有安装后,您将获得如下结果。Advertisement.banner-1{text-align:center; padding-top:10pximportant; padding-bottom:10pximportant; padding-left:0pximportant; padding-right:0pximportant; width:100%important; box-sizing:border-boximportant; background -color:#eeeeeeimportant; border:1px实心#dfdfdf}

在CentOS 8上安装GitLab CE

结果,现在在CentOS 8系统上安装了GitLab CE社区版。

第3步-生成SSL Letsencrypt和DHPARAM

在本教程中,我们将在安全的HTTPS连接上运行GitLab,并且将使用Letsencrypt的SSL Letsencrypt和DHAPRAM(可使用openssl命令生成)。

在此步骤中,我们将使用certbot命令行工具生成SSL Letsencrypt,该工具可以从EPEL存储库安装,然后使用openssl生成DHPARAM证书。

使用以下命令将EPEL存储库添加到CentOS 8系统。

sudo dnf install epel-release

接下来,使用下面的dnf命令安装certbot软件包。

sudo dnf install certbot

完成所有安装后,使用下面的certbot命令生成用于GitLab的SSL Letsencryp。

certbot certonly --rsa-key-size 2048 --standalone --agree-tos --no-eff-email --email [email protected] -d gitlab.hakase-labs.io

现在,您的SSL证书将在’/etc/letsencrypt/live/gitlab.hakase-labs.io’目录中可用,请使用以下命令进行检查。

ls -lah /etc/letsencrypt/live/gitlab.hakase-labs.io/

您将获得“ fullchain.pem”和“ privkey.pem”证书。

接下来,使用下面的openssl命令将DHPARAM证书生成到’/ etc / gitlab’目录。

sudo openssl dhparam -out /etc/gitlab/dhparams.pem 2048

完成所有操作后,将“ dhparam.pem”证书的权限更改为“ 0600”。

sudo chmod 600 /etc/gitlab/dhparams.pem

结果,生成了用于GitLab的SSL Letsencrypt和DHPARAM证书。

第4步-为GitLab设置域名启用Nginx HTTPS

在此步骤中,我们将设置域名并为GitLab启用Nginx HTTPS安全连接。

转到“ / etc / gitlab”目录并编辑配置“ gitlab.rb”。

cd /etc/gitlab/
vim gitlab.rb

在“ external_url”行上,使用您自己的名称更改默认域名,并将http更改为https协议,如下所示。

external_url 'https://gitlab.hakase-labs.io'

接下来,在“ external_url”行之后添加以下配置,并确保使用您自己的SSL和DHPARAM证书进行更改。

nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/letsencrypt/live/gitlab.hakase-labs.io/fullchain.pem"
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/gitlab.hakase-labs.io/privkey.pem"
nginx['ssl_dhparam'] = "/etc/gitlab/dhparams.pem"

保存并关闭。

配置GitLab CE

接下来,运行以下命令以重新配置GitLab并应用新配置。

sudo gitlab-ctl reconfigure

该命令将调用为Omnibus GitLab提供动力的Chef脚本,以重新配置GitLab安装。

重新配置GitLab CE

完成所有步骤后,请转到下一步。

第5步-配置防火墙

在GitLab上启用HTTPS之后,我们将HTTP和HTTPS服务添加到Firewalld。

运行下面的firewall-cmd命令。

firewall-cmd --add-service=ssh --permanent
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent

之后,重新加载firewalld服务以应用新配置。

firewall-cmd --reload

现在,使用以下命令检查firewalld上的所有服务。

firewall-cmd --list-services

现在,您将在列表中获得SSH,HTTP和HTTPS服务。

设置防火墙

结果,您已经将HTTP和HTTPS服务添加到了firewalld,并且GitLab现在可以使用了。

第6步-GitLab安装后

打开您的Web浏览器,然后在地址栏上键入您的GitLab域名安装。 我的是:https://gitlab.hakase-labs.io/,请使用您的地址。

然后,您将被重定向到重置密码页面。

-GitLab重置默认密码

输入默认的GitLab用户“ root”的新密码。

GitLab重置默认密码

现在,单击“更改密码”按钮,您将被重定向到GitLab登录页面。

亚搏体育app Logih页面

输入默认用户“ root”和密码,然后单击“登录”按钮,您将获得如下的GitLab仪表板。

亚搏体育app仪表板

更改个人资料和用户名

登录到GitLab仪表板后,请使用您自己的默认“ root”用户进行更改。

要更改个人资料设置,请点击图标个人资料的右上角,然后点击“设置”图标以设置您的个人资料。

现在输入新的用户名和电子邮件地址,然后滚动到底部页面并单击“更新配置文件设置”按钮。

变更个人资料GitLab

接下来,单击“帐户”选项卡,使用您自己的默认用户名更改为“ root”,然后单击“更新用户名”按钮。

更改默认的根用户名Gitlab

结果,root用户的默认用户名和电子邮件地址已更改。

添加SSH密钥

现在,我们将SSH密钥添加到GitLab。 确保您拥有SSH密钥,如果没有,则可以使用以下命令生成SSH密钥。

ssh-keygen

现在,您将在用户主目录内的“〜/ .ssh”目录中生成SSH密钥。

生成SSH密钥

接下来,返回到GitLab仪表板,然后单击“ SSH密钥”选项卡菜单。

复制SSH公钥“〜/ .ssh / id_rsa.pub”的内容并粘贴到GitLab页面,然后单击“添加密货币钥”按钮。

将SSH密钥添加到GitLab

结果,SSH密钥已添加到GitLab。

设置每个帐户的项目限额

在顶部中间菜单上,单击“设置”按钮。

现在,单击“设置”>“常规”,在“帐户和限制”部分,单击“扩展”。

设置项目限制Gitlab

根据需要更改“默认项目限制”,然后单击“保存”按钮。

如此一来,每个帐户的默认项目限制已更改。

第7步-创建新项目并提交

在这一步中,我们将通过创建一个新的GitLab项目来测试我们的GitLab安装。

创建新的GitLab项目

要在GitLab上创建一个新项目,请单击右上角菜单上的“ +”插入按钮。

Gitlab创建新项目

现在,输入详细信息您的项目名称,项目标记和描述,然后单击“创建项目”按钮。

创建新项目Gitlab

并创建了新的GitLab项目。

在笔记本电脑上设置GitLab

在GitLab上创建新项目后,我们将在本地计算机上设置GitLab帐户。

打开您的终端并运行以下git命令来设置git的默认用户和电子邮件地址。

git config --global user.name "hakase"
git config --global user.email "[email protected]"

接下来,将您的GitLab项目克隆到本地计算机目录并进入。

git clone https://gitlab.hakase-labs.io/hakase/test-project.git
cd test-project/

结果,已经配置了Git的默认用户和电子邮件,并且GitLab项目已被克隆到本地计算机。

在本地计算机上设置Gitlab项目

进行更改并提交

现在,我们在本地计算机上有了GitLab项目,我们将进行测试以更改“ README.md”文件,并对GitLab项目进行首次提交。

使用编辑器编辑“ README.md”文件。

vim README.md

现在对文件进行更改,然后保存并关闭。

之后,使用下面的命令添加新版本的“ README.md”文件并提交。

git add .
git commit -m "Change README.md"

现在,使用下面的git push命令将新更改推送到GitLab存储库。

git push origin master

“ README.md”文件的新更改已推送到GitLab存储库。

Git Push Origin master

接下来,返回到Web浏览器上的GitLab存储库,您将获得新版本的’README.md’文件,其中的提交注释位于顶部。

Gitlab推

结果,我们成功创建了一个新的GitLab项目并对其进行更改。

最后,在CentOS 8 Server上的安装和配置GitLab已成功完成。

资讯来源:由0x资讯编译自HOWTOFORGE,版权归作者所有,未经许可,不得转载
你可能还喜欢