使用 Linux 软件包安装极狐GitLab

  • Tier: 基础版,专业版,旗舰版
  • Offering: 私有化部署

先决条件#

  • 安装要求
  • 如果你想通过使用域名来访问你的极狐GitLab 实例,比如 mygitlabinstance.com,确保域名正确指向极狐GitLab 安装服务器的 IP。你可以使用命令 host mygitlabinstance.com 来检查。
  • 如果你想在极狐GitLab 实例上使用 HTTPS,确保你已准备好域名的 SSL 证书。(注意像容器镜像仓库这样的某些组件可以拥有自己的子域名,需要为这些子域名准备证书。)
  • 如果你想发送通知邮件,安装并配置一个邮件服务器 (MTA),比如 Sendmail 或 Postfix。或者,你可以使用其他第三方 SMTP 服务器

安装和配置#

这些配置设置通常在配置 Linux 软件包安装时使用。有关完整的设置列表,请参阅 README 文件。

设置初始账户#

默认情况下,Linux 软件包安装会自动为初始管理员用户账户 (root) 生成密码,并将其存储到 /etc/gitlab/initial_root_password 中至少 24 小时。出于安全原因,24 小时后,该文件会在第一次 gitlab-ctl reconfigure 运行时自动删除。

默认账户与随机生成的邮箱地址绑定。要覆盖此设置,请将 GITLAB_ROOT_EMAIL 环境变量传递给安装命令。

如果极狐GitLab 无法在安装过程中检测到服务器的有效主机名,则不会运行重新配置。

要提供自定义初始 root 密码,你有两个选项:

  • GITLAB_ROOT_PASSWORD 环境变量传递给安装命令,前提是服务器的主机名设置正确:

    shell
    sudo GITLAB_ROOT_EMAIL="<gitlab_admin@example.com>" GITLAB_ROOT_PASSWORD="<strongpassword>" EXTERNAL_URL="http://gitlab.example.com" apt install gitlab-ee

    如果在安装过程中极狐GitLab 没有自动执行重新配置,你需要将 GITLAB_ROOT_PASSWORDGITLAB_ROOT_EMAIL 变量传递给第一次 gitlab-ctl reconfigure 运行。

  • 在第一次重新配置之前,编辑 /etc/gitlab/gitlab.rb(如果不存在则创建它)并设置:

    ruby
    gitlab_rails['initial_root_password'] = '<my_strong_password>'

这两种方法仅在初始数据库种子期间适用,该过程在第一次重新配置期间发生。在后续的重新配置运行中,上述方法均无效。在这种情况下,请使用 /etc/gitlab/initial_root_password 中的随机密码登录,或重置 root 密码

使用 Docker 镜像#

你也可以使用极狐GitLab 提供的 Docker 镜像来安装和配置极狐GitLab 实例。查看文档以了解更多信息。

卸载 Linux 软件包 (Omnibus)#

要卸载 Linux 软件包,你可以选择保留数据(存储库、数据库、配置)或删除所有数据:

  1. 可选。为了在删除软件包之前删除由 Linux 软件包创建的所有用户和群组(使用 aptyum),执行以下命令:

    shell
    sudo gitlab-ctl stop && sudo gitlab-ctl remove-accounts

如果在删除账户或群组时遇到问题,请手动运行 userdelgroupdel 删除它们。你可能还需要手动从 /home/ 中删除剩余的用户主目录。

  1. 选择是保留数据还是删除所有数据:

    • 要保留数据(存储库、数据库、配置),停止极狐GitLab 并删除其监督进程:

      shell
      1sudo systemctl stop gitlab-runsvdir 2sudo systemctl disable gitlab-runsvdir 3sudo rm /usr/lib/systemd/system/gitlab-runsvdir.service 4sudo systemctl daemon-reload 5sudo systemctl reset-failed 6sudo gitlab-ctl uninstall
    • 要删除所有数据:

      shell
      sudo gitlab-ctl cleanse && sudo rm -r /opt/gitlab
  2. 卸载软件包(如果你安装了极狐GitLab FOSS,则替换为 gitlab-ce):

    shell
    # Debian/Ubuntu sudo apt remove gitlab-ee # RedHat/CentOS sudo yum remove gitlab-ee