在CentOS 8/Rhel 8上安装和配置Gitlab
我如何在CentOS 8/Rhel 8上安装Gitlab?
Gitlab是一种强大而开源的基于Git的基于Git的平台,可加速软件开发和协作。
它提供了Scratch功能,如集成的CI/CD,Auto Devops,Kubernetes集成,Gitlab容器注册表等在本文中,我们将在CentOS 8/RHEL 8上探讨Gitlab CE以及配置/使用它的基础知识。
Gitlab在其他平台上的显着优势是开源许可证提供的功能和集成的Myriad。
其他平台将肯定会在Gitlab上提供一些功能。
有了这一说,让我们看看如何在CentOS/RHEL 8上安装和配置Gitlab。
遍布所有操作系统,Gitlab有两个不同的产品:
Gitlab Community Edition(CE) - Freef for Useggitlab企业版(EE) - 需要购买许可证使用。
值得注意的是,通过移动到订阅(EE)可以解锁更多功能。
查看Gitlab订阅的详细信息。
第1步:更新系统并安装依赖项
更新系统并安装所需的依赖项:
sudo yum -y update sudo yum -y install curl vim policycoreutils python3-policycoreutils
如果要安装和使用本地邮件服务器以发送通知,请安装Postfix:
sudo yum -y install postfix
安装后启动并启用Postfix服务。
sudo systemctl enable postfix && sudo systemctl start postfix
有关设置Gitlab后的外部电子邮件中继服务的配置,请跳过此步骤并检查如何配置外部SMTP服务器。
第2步:添加Gitlab CE存储库
Gitlab从存储库提供omnibus包。
这些软件包专门为CentOS/RHEL编译。
为此目的提供脚本。
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
如果脚本执行成功,我们将获得类似于下面的输出。
Complete! Generating yum cache for gitlab_gitlab-ce... Importing GPG key 0xE15E78F4: Userid : "GitLab B.V. (package repository signing key) <Hyman@theitroad>" Fingerprint: 1A4C 919D B987 D435 9396 38B9 1421 9A96 E15E 78F4 From : https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey Importing GPG key 0xF27EAB47: Userid : "GitLab, Inc. <Hyman@theitroad>" 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...
为GPG键做同样的事情。
: NOKEY gitlab_gitlab-ce 1.9 kB/s | 1.7 kB 00:00 Importing GPG key 0xE15E78F4: Userid : "GitLab B.V. (package repository signing key) <Hyman@theitroad>" Fingerprint: 1A4C 919D B987 D435 9396 38B9 1421 9A96 E15E 78F4 From : https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey Is this ok [y/N]: y Key imported successfully gitlab_gitlab-ce 4.5 kB/s | 3.9 kB 00:00 Importing GPG key 0xF27EAB47: Userid : "GitLab, Inc. <Hyman@theitroad>" 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 Is this ok [y/N]: y
第3步:在CentOS 8/Rhel 8上安装Gitlab CE
通过运行命令安装Gitlab CE:
sudo yum install gitlab-ce
点击y开始在CentOS 8/Rhel 8上安装Gitlab CE。
Last metadata expiration check: 0:03:51 ago on Mon 09 Mar 2017 09:02:50 PM EAT. Dependencies resolved. ======================================================================================================================================================== Package Architecture Version Repository Size ======================================================================================================================================================== Installing: gitlab-ce x86_64 12.8.5-ce.0.el8 gitlab_gitlab-ce 733 M Transaction Summary ======================================================================================================================================================== Install 1 Package Total download size: 733 M Installed size: 1.6 G Is this ok [y/N]: y
第4步:在CentOS 8/Rhel 8上配置Gitlab CE
我们的安装完成了,然后我们可以执行适用于环境的Gitlab配置。
Gitlab的主要配置文件位于/etc/gitlab/gitlab.rb下。
sudo vi /etc/gitlab/gitlab.rb
例如,设置Gitlab将无法访问的URL:
external_url 'http://gitlab.example.com'
滚动配置文件并相应地进行更改。
完成后,保存文件并运行Gitlab重新配置脚本。
sudo gitlab-ctl reconfigure
这将启动Chef本地执行来配置Gitlab。
成功的重新配置显示了下面的输出。
如果我们有活动防火墙,请允许HTTP,HTTPS和SSH服务。
sudo firewall-cmd --permanent --add-service={ssh,http,https} --permanent sudo firewall-cmd --reload
第4步:访问Gitlab Web控制台
打开浏览器并转到URL http://gitlab.example.com
完成Gitlab的安装。
我们被要求为帐户创建新密码。
为root用户设置新密码,然后单击"更改密码"。
然后,我们可以使用上面的root用户名和密码登录。
登录后,应将我们重定向到Gitlab管理仪表板。
第5步:禁用用户注册(推荐)
默认情况下,Gitlab允许新用户注册,通常情况下,由于用户由Sysadmin或者从LDAP等外部认证系统中拉动的用户信息手动创建用户。
我们可以禁用此设置以具有安全的访问管理。
看:
如何在登录页面上禁用Gitlab用户注册
第6步:使用SSL证书安全地理标签(推荐)
SSL是用于安全访问Internet服务的Defacto协议。
我们可以使用免费的SSL证书,例如Let’s Encrypt 以保护Gitlab服务器。
请参阅下面的前一张教程。
如何使用SSL证书保护Gitlab Server
步骤7:启用LDAP身份验证(可选)
对于使用LDAP作为验证方法的人来说,Gitlab可以配置为使用诸如FreeIPA的LDAP服务器来验证用户。