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

Gitlab.com工件大小超限问题咨询及替代方案寻求

GitLab.com CI/CD工件413过大问题解决方案

关于GitLab.com工件大小限制调整

GitLab.com的共享运行器和工件存储有固定的大小限制,普通免费/付费套餐用户无法自行调整该限制(官方文档中针对本地GitLab实例的调整选项不适用于GitLab.com托管服务)。目前GitLab.com的单工件归档大小上限为1GB,你的1.3GB构建包已超出阈值,因此触发413错误。

可行替代方案

  • 拆分工件上传
    将构建包拆分为多个小于1GB的分片,在CI脚本中用split命令分割后分别上传:

    # 分割构建包为1GB分片
    split -b 1G ./build-output.zip ./build-output-part-
    

    对应的工件配置:

    artifacts:
      paths:
        - build-output-part-*
    

    后续下载时通过cat命令合并:

    cat build-output-part-* > build-output.zip
    
  • 上传至外部存储(以Google Drive为例)
    跳过GitLab工件存储,直接在CI流水线内将构建包上传到Google Drive:

    1. 在GitLab项目的Settings > CI/CD > Variables中添加Google Drive服务账号的JSON密钥(命名为GDRIVE_SERVICE_ACCOUNT_KEY,设为保密变量)
    2. CI脚本中安装工具并执行上传:
    # 安装gdrive工具
    wget https://github.com/prasmussen/gdrive/releases/download/2.1.1/gdrive_2.1.1_linux_amd64.tar.gz
    tar -xzf gdrive_2.1.1_linux_amd64.tar.gz
    chmod +x gdrive
    # 认证服务账号
    ./gdrive auth service-account --key <(echo "$GDRIVE_SERVICE_ACCOUNT_KEY")
    # 上传到指定Drive文件夹
    ./gdrive upload --parent <你的文件夹ID> ./build-output.zip
    

    注意需确保服务账号拥有目标文件夹的上传权限。

  • 使用GitLab对象存储(付费用户专属)
    若为GitLab.com付费套餐用户,可在项目Settings > CI/CD > Artifacts中配置GitLab对象存储替代默认工件存储,该方案支持更高的存储配额和更大的单个文件上传量。

  • 优化构建包体积
    通过精简内容缩小构建包:

    • 用Unity的Addressable或Asset Bundle工具移除未使用资源
    • 采用7z/zip高压缩率模式压缩构建包
    • 删除日志、调试符号等非必要文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 20:27:14