1. 环境准备
1.1 操作系统
首先需要确认您使用的服务器操作系统是否是CentOS。 如果不是,您可以在CentOS官网上下载相应版本的操作系统安装文件。 推荐使用CentOS7或更新的版本。
1.2 安装依赖包
在安装和使用GitLab之前,必须安装一些依赖项。 包括curl、policycoreutils、openssh-server、postfix、firewalld等。 可以使用以下命令安装:
sudo yum install -y curl policycoreutils openssh-server postfix firewalld
注意:如果在安装过程中出现错误,可能是您的yum源配置有问题,请检查。
1.3 安装Git
Git是GitLab的基础,必须安装。 可以使用以下命令在CentOS上安装Git:
sudo yum install -y git
完成后,请使用以下命令检查安装是否成功:
git --version
如果Git安装成功,则显示Git的版本信息,如下所示:
git version 2.22.0
2. 下载并安装GitLab
2.1 添加GitLab存储库
可以使用以下命令添加GitLab存储库:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
请注意,该命令需要Internet连接才能运行。
2.2 安装GitLab CE
使用以下命令安装GitLab:
sudo yum install gitlab-ce
该过程可能需要一些时间,具体取决于网络速度和服务器性能。
安装完成后,启动GitLab和相关服务:
sudo systemctl start gitlab-runsvdir.service
sudo systemctl enable gitlab-runsvdir.service
检查GitLab是否已安装:
sudo gitlab-ctl status
如果所有组件都正在运行,则会在输出中看到所有绿色活动消息。
3. 配置GitLab
3.1 通过Web界面访问GitLab
打开Web浏览器,并输入您的服务器IP地址和8080端口,例如:
http://your-server-ip-address:8080
请注意,如果您使用的是防火墙,需要开放端口8080,以便从外部访问GitLab。
首次访问Web页面时,您需要设置管理员账户密码,如下图所示。
3.2 配置邮件通知
默认情况下,GitLab会向管理员发送电子邮件通知。 在本地环境中,这些邮件通常无法送达。 因此,建议将邮件通知发送到您自己的电子邮件地址。 要设置电子邮件通知,请编辑GitLab配置文件:
sudo vim /etc/gitlab/gitlab.rb
找到以下行:
#gitlab_rails['smtp_enable'] = true
将其取消注释,并添加以下配置:
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "youremail@gmail.com"
gitlab_rails['smtp_password'] = "password"
gitlab_rails['smtp_domain'] = "smtp.gmail.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
请将'youremail@gmail.com'和'password'更改为您自己的电子邮件地址和密码。
完成后,重新配置GitLab:
sudo gitlab-ctl reconfigure
4. 创建新项目
现在,您可以在自己的GitLab实例上创建一个新项目。 在GitLab Web界面中,单击“New project”按钮,并为项目设置名称、描述和可见性选项(公共、内部或私人)。 您还可以选择上传一个本地文件作为基础项目。 一旦完成,单击“Create project”按钮即可创建项目。 然后,您可以在GitLab中克隆该项目,并将其与本地Git代码库同步,如下所示:
git clone http://your-server-ip-address:8080/yourusername/yourprojectname.git
现在,您可以将所需的更改推送到GitLab上的项目中,并且其他人也可以协作管理代码。
以上是在CentOS服务器上搭建GitLab的方法,希望对您有所帮助。