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

使用用户名AWS执行docker login时提示无法找到凭证如何解决

报错原因
  • 你对ECR的登录逻辑存在误解:docker login时用户名固定填AWS是ECR的规则要求,不代表可以跳过凭证校验。你执行的aws ecr get-login-password本身属于AWS CLI命令,它需要先完成AWS身份校验,才能调用ECR接口生成临时登录密码,这个步骤要求当前环境必须已经配置有效AWS凭证,因此触发了"无法定位凭证"的报错。
解决方案

针对你使用的Bamboo构建代理场景,可根据实际环境选择对应方案:

  • 若Bamboo代理运行在AWS EC2实例上:直接给EC2实例绑定具备ECR推拉权限的IAM角色即可,AWS CLI会自动读取实例元数据中的角色临时凭证,无需手动配置密钥。
  • 若Bamboo代理运行在非AWS环境:
    1. 先在Bamboo项目/构建计划的变量配置页,添加具备ECR权限的IAM用户的AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY,注意设置为加密变量避免密钥泄露。
    2. 执行登录命令前先导出对应环境变量:
    export AWS_ACCESS_KEY_ID=${bamboo.你配置的访问密钥变量名}
    export AWS_SECRET_ACCESS_KEY=${bamboo.你配置的秘密密钥变量名}
    export AWS_DEFAULT_REGION=<你的AWS区域>
    
    1. 修正你原有命令的语法错误(变量赋值时等号两侧不能有空格)后执行即可:
    password=$(aws ecr get-login-password --region <myregion>)
    docker login --username AWS --password $password <myid>.dkr.ecr.<myregion>.amazonaws.com
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.19 05:24:03