GitLab配置步骤

第一步:准备服务器环境

在开始之前,请确保你的服务器满足以下要求,特别是内存:

  • 硬件最低要求:

    • 内存:至少 4GB RAM(如果低于4GB,GitLab可能无法正常启动)。

    • CPU:至少 2 核心。

    • 磁盘:至少 10GB(根据代码量建议给更大)。

  • 操作系统:Ubuntu 22.04/20.04 或 CentOS 7/8/9。

  • 网络:需要能访问互联网以下载安装包。

第二步:安装依赖和GitLab

这里以最常见的 Ubuntu 和 CentOS 系统为例。

1. Ubuntu/Debian 系统
  • 安装必要依赖(包括用于发送邮件通知的 Postfix):

    bash

    复制代码
    sudo apt update
    sudo apt install -y curl openssh-server ca-certificates tzdata perl postfix

    在 Postfix 安装界面,选择 "Internet Site" 并按提示操作即可。

  • 添加GitLab官方仓库并安装社区版(CE):

    bash

    复制代码
    # 添加仓库脚本
    curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
    
    # 安装GitLab(请将 YOUR_SERVER_IP 替换为你的服务器公网IP或域名)
    sudo EXTERNAL_URL="http://YOUR_SERVER_IP" apt install gitlab-ce
2. CentOS/RHEL 系统
  • 安装依赖:

    bash

    复制代码
    sudo yum install -y curl policycoreutils-python openssh-server perl postfix
    sudo systemctl enable postfix
    sudo systemctl start postfix
  • 添加仓库并安装:

    bash

    复制代码
    curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
    sudo EXTERNAL_URL="http://YOUR_SERVER_IP" yum install -y gitlab-ce

第三步:配置和启动

安装完成后,需要运行核心配置命令,这可能会花费几分钟时间:

bash

复制代码
sudo gitlab-ctl reconfigure

这条命令会自动完成数据库初始化、Nginx配置等一系列工作。

第四步:获取初始密码并登录

  1. 获取root用户的初始密码 :

    首次安装会自动生成一个随机密码,你需要通过命令查看它:

    bash

    复制代码
    sudo cat /etc/gitlab/initial_root_password

    注意 :这个密码文件会在首次执行 reconfigure 后的 24小时内自动删除,所以请务必在24小时内登录并修改密码,或者提前记下来。

  2. 访问GitLab :

    打开浏览器,访问你在安装时设置的 EXTERNAL_URL(例如 http://你的服务器IP)。

  3. 登录 :

    用户名是 root,密码是上一步获取的那个字符串。

第五步:常用管理命令

安装完成后,你可以通过以下命令管理GitLab服务:

命令 说明
sudo gitlab-ctl start 启动所有GitLab组件
sudo gitlab-ctl stop 停止GitLab
sudo gitlab-ctl restart 重启GitLab
sudo gitlab-ctl status 查看各组件运行状态
sudo gitlab-ctl reconfigure 修改 /etc/gitlab/gitlab.rb 配置后,需执行此命令使其生效
sudo gitlab-ctl tail 实时查看日志,用于排查错误

其他安装方式:Docker 快速体验

如果你只是想快速测试,或者不想在物理机上安装依赖,Docker 是个不错的选择。

bash

复制代码
docker run --detach \
  --hostname gitlab.example.com \
  --publish 443:443 --publish 80:80 --publish 22:22 \
  --name gitlab \
  --restart always \
  --volume /srv/gitlab/config:/etc/gitlab \
  --volume /srv/gitlab/logs:/var/log/gitlab \
  --volume /srv/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest

注意:如果使用 Docker,获取初始密码的命令需要改为 docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password。

几个后续优化建议

成功登录后,为了更好地使用,建议进行以下配置:

  1. 修改密码:登录后立即点击右上角头像 -> Preferences -> Password 修改 root 密码。

  2. 配置邮件服务(SMTP) :编辑 /etc/gitlab/gitlab.rb,配置 gitlab_rails['smtp_enable'] = true 等相关参数,这样系统才能正常发送注册、通知邮件。

  3. 配置HTTPS :为了安全,建议申请SSL证书,并在 /etc/gitlab/gitlab.rb 中将 external_url 改为 https:// 开头,并指定证书路径。

你是打算将GitLab安装在 Ubuntu 还是 CentOS 系统上?这两个系统的防火墙命令(ufw 或 firewalld)不同,如果你告诉我具体环境,我可以补充后续的端口开放步骤。

相关推荐
挖掘狂人21 小时前
Git 从 0 到 1:用一个小项目走完 add / commit / reset / merge / rebase / push
git·后端·github
codigger1 天前
Git 三区域模型:把 add、commit、reset、merge 一次讲透
git·github·编程·编程语言
水饺编程1 天前
第1章:开发环境搭建,在 Windows 中安装 Git
linux·c语言·汇编·git·ubuntu
idanzk1 天前
Git 推送 GitHub 报 SSL_READ /src refspec main 不匹配 完整踩坑记录
git·github·ssl
星恒随风1 天前
Linux开发工具详解(二):Git版本控制、GitHub协作与GDB调试实战
linux·笔记·git·学习·github
寺中人2 天前
Xshell 完全入门指南:从安装到实战,远程连接+文件传输+会话管理全拆解
git·ssh·github·php·远程连接·xshell·运维工具
酬谢神明则必安2 天前
git学习记录01
linux·git·学习
lingchen19062 天前
版本控制 Git源代码项目管理
git
虫无涯2 天前
Coverity 如何结合 GJB8114-2013使用?
git·单元测试·嵌入式测试·coverity·静态扫描
喵本喵叁肆2 天前
Git 深度解读:从对象模型到分支指针,把版本控制的内核讲透
git