技术分享
🗒️基于 CentOS 7 搭建 GitLab
00 分钟
2021-7-2
2023-9-11
type
status
date
slug
summary
tags
category
icon
password

一、准备环境

1、更新软件包

2、安装sshd

3、启用并启动sshd

4、配置防火墙
打开 /etc/sysctl.conf 文件,在文件最后添加新的一行并按 Ctrl + S 保存:

启用并启动防火墙:

放通 HTTP:

重启防火墙:

在实际使用中,可以使用 systemctl status firewalld 命令查看防火墙的状态。
5、安装postfix
GitLab 需要使用 postfix 来发送邮件。当然,也可以使用 SMTP 服务器,具体步骤请参考 官方教程 。
安装:

打开 /etc/postfix/main.cf 文件,在第 119 行附近找到 inet_protocols = all,将 all 改为 ipv4 并按 Ctrl + S 保存:

启用并启动 postfix:

6、配置swap交换分区
由于 GitLab 较为消耗资源,我们需要先创建交换分区,以降低物理内存的压力。
在实际生产环境中,如果服务器配置够高,则不必配置交换分区。
新建 2 GB 大小的交换分区:

格式化为交换分区文件并启用:

添加自启用。打开 /etc/fstab 文件,在文件最后添加新的一行并按 Ctrl + S 保存:

二、GitLabe 配置及安装

2.1、安装GitLab
由于网络环境的原因,将安装源改为国内源(这里修改为清华大学)
在 /etc/yum.repos.d 目录下新建 gitlab-ce.repo 文件并保存。内容如下:

刚才修改过了 yum 源,因此先重新生成缓存:
(此步骤执行时间较长,一般需要 3~5 分钟左右,请耐心等待)
安装 GitLab(此步骤执行时间较长,一般需要 3~5 分钟左右,请耐心等待)

2.2、初始化GitLab
2.2.1 配置 GitLab 的域名(非必需)
打开 /etc/gitlab/gitlab.rb 文件,在第 13 行附近找到 external_url 'http://gitlab.example.com',将单引号中的内容改为自己的域名(带上协议头,末尾无斜杠),并按 Ctrl + S 保存。
例如:

记得将域名通过 A 记录解析到指定的主机。
2.2.2 使用如下命令初始化 GitLab:
(此步骤执行时间较长,一般需要 5~10 分钟左右,请耐心等待)