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

如何将Helm Provenance文件推送至AWS ECR?解决推送报错

解决AWS ECR推送Helm Provenance文件的问题

问题根源

Helm的push命令仅针对Helm Chart归档包(.tgz格式)设计,它会自动验证文件是否为gzip压缩包。而Provenance文件(.prov)是纯文本签名文件,不符合该命令的验证逻辑,因此触发报错。

解决方案:使用oras推送Provenance文件

AWS ECR是标准OCI仓库,可通过oras(通用OCI artifact推送工具)推送Provenance这类非Chart的OCI artifacts,具体步骤如下:

  1. 安装oras工具

    • macOS:通过Homebrew安装:brew install oras
    • 其他系统:下载对应系统的二进制文件并添加至系统PATH即可
  2. 登录AWS ECR仓库
    执行AWS CLI命令获取登录凭证,完成oras登录:

    aws ecr get-login-password --region <region> | oras login --username AWS --password-stdin <account_id>.dkr.ecr.<region>.amazonaws.com
    
  3. 推送Provenance文件到ECR
    推送时需指定Provenance文件的OCI artifact类型(application/vnd.cncf.helm.provenance.v1+txt),建议设置与Chart版本关联的标签以便识别:

    oras push <account_id>.dkr.ecr.<region>.amazonaws.com/mychart:0.1.0-prov mychart-0.1.0.tgz.prov --artifact-type application/vnd.cncf.helm.provenance.v1+txt
    
  4. 验证推送结果
    拉取文件确认推送成功:

    oras pull <account_id>.dkr.ecr.<region>.amazonaws.com/mychart:0.1.0-prov
    

额外说明

  • 若要让Provenance文件与对应Chart版本强关联,可使用与Chart相同的版本标签,OCI仓库允许同一标签下存在多种类型的artifact,拉取时需指定对应类型即可。
  • 后续拉取Provenance文件仍需使用oras pull命令,Helm CLI暂不支持直接拉取单独的Provenance文件。

内容的提问来源于stack exchange,提问作者unbox-us

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 18:30:18