使用软件包升级极狐GitLab
您可以使用极狐GitLab 软件包将极狐GitLab 升级到新版本。
先决条件
- 确保所有后台迁移已完全完成。在后台迁移完成之前升级可能会导致数据损坏。我们建议在主要版本和次要版本之间执行的升级次数,每周不超过一次,以便有时间完成后台迁移。
- 在升级应用程序服务器之前,必须将 Gitaly 服务器升级到较新的版本,可以防止应用服务器上的 gRPC 客户端发送旧 Gitaly 版本不支持的 RPC。
停机时间
- 对于单节点安装实例,极狐GitLab 在升级过程中对用户不可用。用户的网络浏览器显示
Deploy in progress
消息或502
错误。
升级前备份
在安装较新的极狐GitLab 版本之前备份极狐GitLab 数据库。您可以通过在 /etc/gitlab/skip-auto-backup
创建一个空文件来跳过此自动数据库备份:
sudo touch /etc/gitlab/skip-auto-backup
尽管如此,强烈建议您自己维护完整的最新备份。
使用官方仓库升级
所有极狐GitLab 软件包都发布到极狐GitLab 软件包服务器,包含 gitlab-jh
仓库。
使用官方仓库升级到最新版本
如果您定期升级极狐GitLab,例如每月一次,您可以使用包管理器升级到最新版本。
要升级到最新的极狐GitLab 版本:
# Ubuntu/Debian
sudo apt update && sudo apt install gitlab-jh
# RHEL/CentOS 7
sudo yum install gitlab-jh
使用官方仓库升级到特定版本
Linux 软件包管理器默认安装最新可用版本的软件包来进行安装和升级。
在软件包管理器的安装或升级命令中指定极狐GitLab 版本号:
-
识别已安装软件包的版本号:
# Ubuntu/Debian sudo apt-cache madison gitlab-jh # RHEL/CentOS 7 yum --showduplicates list gitlab-jh
-
使用以下命令之一安装特定的
gitlab-jh
包,并将<version>
替换为您在上一步中找到的受支持版本:# Ubuntu/Debian sudo apt install gitlab-jh=<version> # RHEL/CentOS 6 and 7 yum install gitlab-jh-<version>
使用手动下载的包进行升级
建议使用软件包库,而不是手动安装。
如果由于某种原因,您不使用官方仓库,则可以下载软件包并手动安装。此方法可用于第一次安装极狐GitLab 或更新它。
下载并安装极狐GitLab:
- 访问软件包的官方仓库。
- 通过搜索您要安装的版本(例如 14.1.8)过滤列表。单个版本可能存在多个包,每个支持的发行版和架构都有一个。 文件名旁边是指示分布的标签,因为文件名可能相同。
- 找到您要安装的软件包版本,然后从列表中选择文件名。
- 选择右上角的 下载,下载软件包。
-
下载软件包后,使用以下命令之一安装它,并将
<package_name>
替换为您下载的包名称:# Debian/Ubuntu dpkg -i <package_name> # CentOS/RHEL rpm -Uvh <package_name>
故障排除
获取极狐GitLab 安装的状态
sudo gitlab-ctl status
sudo gitlab-rake gitlab:check SANITIZE=true
运行 apt-get update
出现错误 An error occurred during the signature verification
要更新极狐GitLab 软件包服务器的 GPG 密钥,请运行:
curl --silent "https://packages.gitlab.cn/repository/raw/gpg/public.gpg.key" | apt-key add -
apt-get update