Ubuntu/CentOS 安装配置 GitLab 命令行操作步骤

本贴最后更新于 1570 天前,其中的信息可能已经东海扬尘

特别说明

如果要在 WSL (适用于 Linux 的 Windows 子系统)中安装 GitLab,则必须使用内部版本号为 18917 或更高版本的 Windows 系统,并将 WSL 升级到 WSL 2(也支持安装 Docker)。

参考链接:https://docs.microsoft.com/zh-cn/windows/wsl/wsl2-install

在以下命令中,以安装社区版为例,如果使用企业版则需将 gitlab-ce 替换为 gitlab-ee

安装和配置必要的依赖项

  • Ubuntu

    sudo apt-get update
    
    sudo apt-get install -y curl openssh-server ca-certificates
    
  • CentOS

    sudo yum install -y curl policycoreutils-python openssh-server
    sudo systemctl enable sshd
    sudo systemctl start sshd
    sudo firewall-cmd --permanent --add-service=http
    sudo firewall-cmd --permanent --add-service=https
    sudo systemctl reload firewalld
    

安装 Postfix 用于发送通知邮件

  • Ubuntu

    sudo apt-get install -y postfix
    
  • CentOS

    sudo yum install postfix
    sudo systemctl enable postfix
    sudo systemctl start postfix
    

安装 Postfix 过程中选择 Internet Site 并回车,然后输入要发送邮件的邮箱地址域。
如发送方邮件地址为 username@example.com,则输入 example.com,然后回车。

添加 GitLab 包存储库并安装

添加 GitLab 包存储库

  • Ubuntu

    curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
    
  • CentOS

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

安装 GitLab

  • Ubuntu

    sudo apt-get install gitlab-ce
    
  • CentOS

    sudo yum install -y gitlab-ce
    

配置 GitLab

安装完成后,执行以下命令编辑配置文件中的访问地址 external_url 和邮箱等设置:

sudo vim /etc/gitlab/gitlab.rb

如:

external_url 'http://192.168.1.6:666'

启动 GitLab

配置完成后,执行以下命令启动 GitLab 实例:

sudo gitlab-ctl reconfigure

启用 GitLab 开机自动启动:

sudo systemctl enable gitlab-runsvdir.service

禁用 GitLab 开机自动启动:

sudo systemctl disable gitlab-runsvdir.service

登录

使用配置好的 external_url 地址进行访问,第一次访问将被重定向到一个密码重置页面。密码重置完成后将被重定向到登录页面,使用默认管理帐户的用户名 root 及刚刚重置的密码进行登录。

更新版本

备份配置(可选)

sudo gitlab-rake gitlab:backup:create STRATEGY=copy

更新 GitLab

  • Ubuntu

    sudo apt-get update && sudo apt-get install gitlab-ce
    
  • CentOS

    sudo yum install -y gitlab-ce
    
    • CentOS 下配置阿里云 yum 源,使用 yum update 命令会同时更新 GitLab CE。

跨版本升级 GitLab

  1. 备份:

    sudo gitlab-rake gitlab:backup:create STRATEGY=copy
    
  2. 停止组件:

    gitlab-ctl stop unicorn
    gitlab-ctl stop sidekiq
    gitlab-ctl stop nginx
    
  3. 依次安装(从 v1 升级到 v2):

    # v1 的最后一个版本
    rpm -Uvh gitlab-ce-1.9.*.x86_64.rpm
    # v2 的第一个版本
    rpm -Uvh gitlab-ce-2.0.*.x86_64.rpm
    # v2 的最后一个版本
    rpm -Uvh gitlab-ce-2.1.*.x86_64.rpm
    
  4. 查看版本:

    cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
    
  5. 重启服务:

    gitlab-ctl restart
    

其他常用命令

停止

sudo gitlab-ctl stop

启动

sudo gitlab-ctl start

重启

sudo gitlab-ctl restart

状态

sudo gitlab-ctl status

日志

sudo gitlab-ctl tail

相关链接

https://about.gitlab.com/install/#ubuntu
https://about.gitlab.com/update/#ubuntu
https://about.gitlab.com/install/#centos-7
https://about.gitlab.com/update/#centos-7

  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖 • 2 关注
  • 命令行
    6 引用 • 7 回帖
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    944 引用 • 943 回帖
  • 安装

    你若安好,便是晴天。

    132 引用 • 1184 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...