You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS7使用谷歌Artifact Registry YUM源安装包报Errno14 HTTPS500错误

问题原因及遗漏配置说明

核心原因

元数据缓存成功但下载RPM包报错500的问题,绝大多数是路径配置或GAR资源映射问题导致,具体可分为以下几类:

  • baseurl末尾缺失斜杠:这是最常见的错误。你当前配置的baseurl为https://LOCATION-yum.pkg.dev/projects/PROJECT/REPOSITORY_NAME,缺少末尾的/。yum拉取元数据时,GAR后端会自动补全路径正常返回,但下载具体RPM包时,yum会直接拼接包名到baseurl后,生成错误的请求地址https://LOCATION-yum.pkg.dev/projects/PROJECT/REPOSITORY_NAMExxxxxx-0.7.0~SNAPSHOT-xxxxx-1.x86_64.rpm,导致GAR后端无法匹配资源返回500错误。
  • RPM包存储路径与元数据映射不匹配:如果你未使用官方gcloud artifacts yum upload命令上传包,而是手动将RPM包上传到GAR的对象存储路径,可能出现元数据索引中记录的包路径和实际存储路径不一致的情况,此时元数据可以正常生成识别,但下载时GAR找不到对应存储对象返回500。
  • 特殊字符解析异常:你的包名包含~特殊字符,部分低版本yum/url解析组件会对该字符做转义处理,导致GAR后端接收到的请求路径和实际存储路径不匹配,触发服务端错误。

遗漏的配置及修复步骤

  • 首先修改/etc/yum.repos.d/下的源配置文件,给baseurl末尾添加斜杠,修正后配置如下:
[my-repo]
name=my-repo
baseurl=https://LOCATION-yum.pkg.dev/projects/PROJECT/REPOSITORY_NAME/
enabled=1
repo_gpgcheck=0
gpgcheck=0
  • 执行yum clean all && yum makecache重新生成缓存后再尝试安装。
  • 如果修改后仍报错,可以手动拼接RPM包的完整地址,用curl -v 完整包地址请求查看返回详情,确认问题根因:
    • 若返回403,说明公开仓库权限配置不全,需要给allUsers主体授予roles/artifactregistry.reader权限
    • 若返回404,说明包实际存储路径和元数据记录不一致,建议删除现有包后用gcloud artifacts yum upload REPOSITORY_NAME --location=LOCATION --source=本地RPM包路径命令重新上传
    • 若仍返回500,可检查是否有代理、防火墙改写了请求头,或者在GCP控制台查看Artifact Registry的运行日志排查服务端错误。

内容的提问来源于stack exchange,提问作者pskrbasu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 06:30:00