温馨提示×

Linux系统中GitLab的安装步骤是什么

小樊
45
2025-10-12 04:41:17
栏目: 智能运维

一、安装前准备

  • 系统要求:选择Ubuntu、CentOS等主流Linux发行版;服务器需满足至少2GB RAM(推荐4GB及以上)20GB以上可用存储空间,并具备稳定的网络连接(需开放HTTP 80、HTTPS 443、SSH 22端口)。
  • 更新系统:运行sudo apt update && sudo apt upgrade -y(Ubuntu/Debian)或sudo yum update -y(CentOS/RHEL)更新系统包。

二、安装必要依赖

  • Ubuntu/Debian:安装curl(下载工具)、openssh-server(SSH服务,用于Git远程访问)、ca-certificates(SSL证书,保障通信安全)、postfix(邮件服务,用于GitLab通知):
    sudo apt install -y curl openssh-server ca-certificates postfix
  • CentOS/RHEL:安装curlpolicycoreutils-python(SELinux策略工具)、openssh-serverpostfix
    sudo yum install -y curl policycoreutils-python openssh-server postfix;启动SSH服务并设置开机自启:
    sudo systemctl enable sshd && sudo systemctl start sshd

三、添加GitLab官方仓库

  • Ubuntu/Debian:运行以下命令添加GitLab CE(社区版)仓库:
    curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
  • CentOS/RHEL:运行以下命令添加GitLab CE仓库:
    curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

四、安装GitLab

  • Ubuntu/Debian:通过APT安装GitLab CE(指定外部URL为服务器IP或域名,如http://your_server_ip):
    sudo EXTERNAL_URL="http://your_server_ip" apt install -y gitlab-ce
  • CentOS/RHEL:通过YUM安装GitLab CE:
    sudo EXTERNAL_URL="http://your_server_ip" yum install -y gitlab-ce

五、配置GitLab

  • 修改外部URL:编辑GitLab主配置文件/etc/gitlab/gitlab.rb,找到external_url行(默认注释),取消注释并修改为服务器IP或域名(如external_url 'http://your_server_ip')。
  • 应用配置:运行sudo gitlab-ctl reconfigure,该命令会根据gitlab.rb的配置重新生成GitLab服务文件并初始化数据库。

六、启动GitLab服务

  • 启动GitLab服务:sudo gitlab-ctl start
  • 设置开机自启:sudo systemctl enable gitlab(部分系统可能需要用sudo systemctl enable gitlab-ctl)。
  • 查看服务状态:sudo gitlab-ctl status(确认所有服务均为“run”状态)。

七、访问GitLab

  • 打开浏览器,输入配置的external_url(如http://your_server_ip),首次访问需设置root管理员密码(初始密码可在/etc/gitlab/initial_root_password中查看,若文件不存在则无需设置)。

八、可选配置

  • 配置防火墙
    • Ubuntu(UFW):sudo ufw allow http && sudo ufw allow https && sudo ufw allow ssh && sudo ufw enable
    • CentOS(Firewalld):sudo firewall-cmd --permanent --add-service={http,https,ssh} && sudo firewall-cmd --reload
  • 配置邮件服务:若需启用注册通知、密码重置等功能,在/etc/gitlab/gitlab.rb中添加SMTP配置(以QQ邮箱为例):
    gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.qq.com" gitlab_rails['smtp_port'] = 465 gitlab_rails['smtp_user_name'] = "your_email@qq.com" gitlab_rails['smtp_password'] = "your_password" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = true gitlab_rails['gitlab_email_from'] = "your_email@qq.com" 
    运行sudo gitlab-ctl reconfigure使配置生效。

0