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

GitLab CI中使用curl下载dependency-check zip文件为空的问题排查

解决GitLab CI中Dependency-Check下载文件大小为0的问题
  • 问题根源分析
    你使用的mcr.microsoft.com/dotnet/runtime:6.0-alpine3.14是Alpine基础镜像,默认存在几个可能导致下载失败的点:

    1. Alpine版curl默认不自动跟随HTTP重定向,而GitHub的Release下载链接通常会有重定向
    2. 镜像默认未安装SSL证书,HTTPS请求可能因证书验证失败静默失败
    3. current.txt返回的版本号可能带有换行符,导致拼接的URL无效
  • 修正后的脚本

    script:
        # 安装SSL证书依赖,同时获取并清理版本号(去除换行符)
        - apk add --no-cache ca-certificates
        - VERSION=$(curl -s https://jeremylong.github.io/DependencyCheck/current.txt | tr -d '\n')
        # 开启重定向和 verbose 输出,确保下载正常执行
        - curl -L -v "https://github.com/jeremylong/DependencyCheck/releases/download/v${VERSION}/dependency-check-${VERSION}-release.zip" --output dependency-check.zip
        - ls -al
        - unzip dependency-check-${VERSION}-release.zip
    
  • 关键修正点说明

    • apk add --no-cache ca-certificates:解决Alpine镜像缺少SSL根证书,导致HTTPS请求验证失败的问题
    • curl添加-L参数:自动跟随GitHub的下载链接重定向,获取真实的文件资源
    • tr -d '\n':清理版本号中的换行符,避免拼接出无效的下载URL
    • -v参数:开启curl的 verbose模式,方便后续排查下载过程中的具体错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 23:01:10