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

无法在ArgoCD中正常使用AWS ECR镜像的问题求助

解决方案尝试方向

1. 检查ArgoCD的Helm值覆盖配置

ArgoCD可能在部署时强制覆盖了image.tag:

  • 打开ArgoCD控制台,找到对应应用,查看Helm Values Overrides或Parameters选项卡,确认有没有手动设置image.tag为固定值(比如1.16.0)或者引用了Chart的appVersion
  • 如果有多余的覆盖项,直接删除,让ArgoCD使用仓库里values.yaml的配置

2. 核对Helm模板的镜像标签引用

确保Deployment模板里正确用了values.yaml的标签,别错用了其他变量:

# 正确写法
containers:
  - name: {{ .Chart.Name }}
    image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"

避免这种错误:

# 错误写法(用了Chart的appVersion而非values里的tag)
image: "{{ .Values.image.repository }}:{{ .Chart.AppVersion }}"

3. 验证ArgoCD的同步策略与版本

  • 检查ArgoCD应用的同步策略,要是开了Auto Sync,试着手动触发一次同步,看日志里有没有标签被覆盖的提示
  • 确认ArgoCD拉取的仓库分支是正确的(比如main分支),有没有缓存旧的values.yaml版本

4. 确认GitHub Actions的更新操作是否生效

  • 看GitHub Actions的执行日志,检查yaml-update-action步骤是否真的把image.tag改成了对应的SHA值
  • 直接去仓库里看values.yaml的提交记录,确认标签和ECR里推送的镜像标签完全一致

5. 检查镜像标签的格式合法性

Kubernetes对镜像标签有格式要求,不能有特殊字符,长度不超过128位:

  • 如果用github.sha做标签,建议取前7位(比如${{ github.sha | truncate(7, "") }}),避免长度问题
  • 确保标签里没有大写字母、空格或其他违规字符

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 10:57:46