GitLab 18 升级说明
- Tier: Free, Premium, Ultimate
- Offering: GitLab Self-Managed
本页面包含 GitLab 18 次要版本和补丁版本的升级信息。 请确保您查看以下说明:
- 您的安装类型。
- 您当前版本与目标版本之间的所有版本。
有关 Helm chart 安装的更多信息,请参阅 Helm chart 9.0 升级说明。
从 16.11 升级时需要注意的问题
- 从 GitLab 18 开始不再支持 PostgreSQL 14。在升级到 GitLab 18.0 或更高版本之前,请将 PostgreSQL 升级到至少 16.8 版本。
从 17.11 升级时需要注意的问题
-
已知问题: 当 Rails 升级但 Sidekiq 仍停留在 17.11 版本时,功能标志
ci_only_one_persistent_ref_creation会导致零停机升级期间流水线失败(详细信息请参见 此处)。预防措施: 升级前打开 Rails 控制台并启用功能标志:
$ sudo gitlab-rails console Feature.enable(:ci_only_one_persistent_ref_creation)如果已经受到影响: 运行此命令并重试失败的流水线:
$ sudo gitlab-rails console Rails.cache.delete_matched("pipeline:*:create_persistent_ref_service")
18.1.0
Geo 安装 18.1.0
- GitLab 18.1.0 版本存在一个已知问题,即从次要 Geo 站点代理的 Git 操作会因 HTTP 500 错误而失败。要解决此问题,请升级到 GitLab 18.1.1 或更高版本。
18.0.0
Geo 安装 18.0.0
-
如果您部署了 GitLab Enterprise Edition 然后回退到 GitLab Community Edition,您的数据库架构可能与 GitLab 应用程序期望的架构不一致,从而导致迁移错误。在升级到 18.0.0 时可能会遇到四个特定的错误,因为该版本添加了一个迁移,这些迁移会更改这些列的默认值。
这些错误是:
No such column: geo_nodes.verification_max_capacityNo such column: geo_nodes.minimum_reverification_intervalNo such column: geo_nodes.repos_max_capacityNo such column: geo_nodes.container_repositories_max_capacity
此迁移已在 GitLab 18.0.2 中修复,以添加缺失的列。 请参见 问题 #543146。
受影响的版本:
受影响的次要版本 受影响的补丁版本 修复于 18.0 18.0.0 - 18.0.1 18.0.2 -
GitLab 18.0 到 18.0.2 版本存在一个已知问题,即从次要 Geo 站点代理的 Git 操作会因 HTTP 500 错误而失败。要解决此问题,请升级到 GitLab 18.0.3 或更高版本。
Docker 安装上的 PRNG 未播种错误
如果您在启用了 FIPS 的主机上运行 Docker 安装的 GitLab,您可能会看到 SSH 密钥生成或 OpenSSH 服务器(sshd)启动失败,并显示以下错误消息:
PRNG is not seededGitLab 18.0 将基础镜像从 Ubuntu 22.04 更新到 24.04。 此错误发生是因为 Ubuntu 24.04 不再 允许 FIPS 主机使用非 FIPS OpenSSL 提供程序。
要解决此问题,您有几个选择:
- 在主机系统上禁用 FIPS。
- 在 GitLab Docker 容器中禁用基于 FIPS 的内核的自动检测。
这可以通过在 GitLab 18.0.2 或更高版本中设置
OPENSSL_FORCE_FIPS_MODE=0环境变量来实现。 - 与其使用 GitLab Docker 镜像,不如在主机上安装 原生 FIPS 包。
最后一个选项是满足 FIPS 要求的推荐方案。对于传统安装,前两个选项可以作为临时解决方案。