简介

GitLab 是一个用于代码管理的开源平台,它提供了一系列用于代码版本控制和项目协作的工具。CentOS Stream 是一个专注于提供与红帽企业Linux(RHEL)兼容的稳定和最新的Linux发行版。本文将为您提供一个详细的指南,帮助您在CentOS Stream上轻松部署GitLab。

系统要求

在开始部署之前,请确保您的系统满足以下要求:

  • CentOS Stream 8 或更高版本
  • 64位处理器
  • 2GB以上RAM(推荐4GB)
  • 网络访问权限

部署前准备

  1. 更新系统包

    sudo dnf update -y 
  2. 安装必要的依赖项

    sudo dnf install -y curl openssh-server postfix cronie 
  3. 配置Postfix为邮件发送服务: 由于GitLab需要邮件服务来发送通知,我们将使用Postfix。

    sudo systemctl start postfix sudo systemctl enable postfix sudo postmap /etc/postfix/main.cf 
  4. 配置Firewall: 确保防火墙允许HTTP和SSH访问。

    sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=ssh sudo firewall-cmd --reload 

安装GitLab

  1. 添加GitLab的yum仓库

    curl https://packages.gitlab.com/install/repositories/ gitlab/gitlab-ce/script.rpm.sh | sudo bash 
  2. 安装GitLab

    sudo dnf install -y gitlab-ce 
  3. 初始化GitLab

    sudo gitlab-ctl reconfigure 
  4. 验证安装: 打开浏览器,访问 http://your_server_ip/,您应该看到GitLab的安装向导。

配置GitLab

  1. 配置GitLab的运行用户: GitLab默认使用git用户运行。

    sudo usermod -aG wheel git 
  2. 修改GitLab的运行端口(可选): 如果您想更改GitLab的默认端口(80),请执行以下命令:

    sudo sed -i 's/^port = 80/port = 8080/' /etc/gitlab/gitlab.rb sudo gitlab-ctl reconfigure 
  3. 配置GitLab的邮件服务: 在 /etc/gitlab/gitlab.rb 中配置以下内容:

    gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.example.com" gitlab_rails['smtp_port'] = 587 gitlab_rails['smtp_user_name'] = "smtp_user@example.com" gitlab_rails['smtp_password'] = "smtp_password" gitlab_rails['smtp_domain'] = "example.com" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = false 

    替换上述示例中的占位符为您的实际邮件服务器配置。

  4. 重新配置GitLab

    sudo gitlab-ctl reconfigure 

维护与更新

  1. 更新GitLab

    sudo dnf update gitlab-ce sudo gitlab-ctl reconfigure 
  2. 备份GitLab: 定期备份GitLab的数据和配置文件。

    sudo gitlab-rake gitlab:backup:create 

通过以上步骤,您应该已经在CentOS Stream上成功部署了GitLab。享受代码管理和项目协作的乐趣吧!