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

Windows 11环境下Docker推送AWS ECR报401 Unauthorized问题求助

AWS ECR镜像推送401 Unauthorized问题排查方案
  • 验证Docker登录凭证有效性
    重新执行完整登录命令,确保返回"Login Succeeded":

    aws ecr get-login-password --region <你的AWS区域> | docker login --username AWS --password-stdin public.ecr.aws/<你的账户别名>/<仓库名>
    

    检查Docker配置文件(Linux/macOS: ~/.docker/config.json;Windows: C:\Users\<用户名>\.docker\config.json),确认存在对应public.ecr.aws的auth条目,且token未过期。

  • 确认仓库类型与命令匹配
    你使用的是公共ECR仓库(public.ecr.aws),需确保推送命令的URI格式完全正确:

    docker push public.ecr.aws/<账户别名>/<仓库名>:<镜像标签>
    

    避免混淆私有ECR仓库(格式为<账户ID>.dkr.ecr.<区域>.amazonaws.com)的操作命令。

  • 排查IAM用户权限限制
    即使配置了AdministratorAccess策略,仍需检查:

    • 用户是否被设置了权限边界(Permission Boundary),限制了ECR相关操作
    • 是否存在**显式拒绝(Deny)**的权限策略,此类策略会优先于允许策略生效
  • 清除凭证缓存

    • 删除AWS CLI缓存目录:Linux/macOS下删除~/.aws/cli/cache,Windows下删除对应路径的缓存文件
    • 重启Docker服务,确保旧的无效凭证被彻底清除
  • 核对镜像标签
    执行docker images检查本地镜像标签,确保与ECR仓库URI完全一致。若不匹配,重新打标签:

    docker tag <本地镜像ID> public.ecr.aws/<账户别名>/<仓库名>:<镜像标签>
    
  • 检查网络环境

    • 确认当前网络没有代理或防火墙拦截Docker的HTTPS请求,若使用代理需同步配置AWS CLI和Docker的代理规则
    • 尝试切换网络(如手机热点)测试,排除企业网络策略的影响

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 01:25:59