极狐 GitLab

升级 Linux 软件包实例

Tier: 基础版,专业版,旗舰版

Offering: 私有化部署

升级 Linux 软件包实例的说明取决于你拥有的是单节点还是多节点极狐GitLab 实例。要升级多节点 Linux 软件包极狐GitLab 实例,请参见:

要升级单节点 Linux 软件包极狐GitLab 实例,请按照本页信息操作。

如果你托管了产品文档,你也可以[将其升级到更高版本](../../administration/docs_self_host.md#upgrade-the-product-documentation-to-a-later-version)。

前提条件#

在升级单节点 Linux 软件包极狐GitLab 实例之前:

在安装较新的极狐GitLab 版本之前,极狐GitLab 数据库会进行备份。你可以通过在 /etc/gitlab/skip-auto-backup 创建一个空文件来跳过此自动数据库备份:

shell
sudo touch /etc/gitlab/skip-auto-backup

尽管如此,你应该自行维护完整的备份

升级单节点 Linux 软件包实例#

要升级单节点 Linux 软件包实例:

  1. 考虑在升级期间开启维护模式
  2. 暂停正在运行的 CI/CD 流水线和作业
  3. 将极狐GitLab Runner 升级到与目标极狐GitLab 版本相同的版本。
  4. 使用 Linux 软件包升级极狐GitLab

升级后:

  1. 恢复正在运行的 CI/CD 流水线和作业
  2. 如果已启用,关闭维护模式
  3. 运行升级健康检查

使用 Linux 软件包升级#

要升级在单节点上运行的极狐GitLab,或升级属于多节点极狐GitLab 实例的节点,可以通过以下任一方式升级:

所有极狐GitLab 软件包都发布在极狐GitLab 软件包服务器上。

仓库描述
gitlab/gitlab-ce精简版软件包,仅包含基础版功能。
gitlab/gitlab-ee完整的极狐GitLab 软件包,包含所有基础版和企业版功能。
gitlab/nightly-builds每日构建。
gitlab/nightly-fips-builds每日 FIPS 合规构建。
gitlab/gitlab-fipsFIPS 合规构建。

默认情况下,Linux 发行版的软件包管理器会安装软件包的最新可用版本。如果你的升级路径需要多次停留,则无法直接升级到极狐GitLab 的最新主版本。如果你的升级路径包含多个版本,则必须在每次升级时指定特定的极狐GitLab 软件包版本。

如果你的升级路径没有中间步骤,则可以直接升级到最新版本。

shell
1# 极狐GitLab 企业版(特定版本) 2sudo apt update && sudo apt install gitlab-ee=<version>-ee.0 3 4# 极狐GitLab 基础版(特定版本) 5sudo apt update && sudo apt install gitlab-ce=<version>-ce.0 6 7# 极狐GitLab 企业版(最新版本) 8sudo apt update && sudo apt install gitlab-ee 9 10# 极狐GitLab 基础版(最新版本) 11sudo apt update && sudo apt install gitlab-ce

使用下载的软件包升级#

如果你不想使用官方仓库,可以下载软件包并手动安装。此方法可用于首次安装极狐GitLab 或升级它。

要下载并安装或升级极狐GitLab:

  1. 转到你的软件包的官方仓库

  2. 通过搜索你要安装的版本来筛选列表。例如,18.4.1。单个版本可能存在多个软件包,每个软件包对应一个受支持的发行版和架构。由于某些文件适用于多个发行版,因此文件名旁边有一个标签指示发行版。

  3. 找到你要安装的软件包版本,并从列表中选择文件名。

  4. 在右上角,选择 下载

  5. 软件包下载后,使用以下命令之一进行安装,并将 <package_name> 替换为你下载的软件包名称:

shell
dpkg -i <package_name>
shell
rpm -Uvh <package_name>
shell
dnf install <package_name>
shell
zypper install <package_name>