You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

无法将Docker镜像推送至AWS ECR的问题排查求助

解决Docker镜像推送AWS ECR时出现网络断开/EOF错误的排查方向

以下是你可能遗漏的排查点:

  • 确认镜像标签格式完全正确
    ECR要求镜像标签必须严格遵循[AWS账号ID].dkr.ecr.[区域].amazonaws.com/[仓库名]:[标签]格式,比如123456789012.dkr.ecr.us-east-1.amazonaws.com/my-app:v1。执行docker tag 本地镜像名:标签 完整ECR标签重新打标签,避免遗漏账号ID、区域等关键部分。

  • 验证ECR仓库的存在性与区域匹配
    用命令aws ecr describe-repositories --repository-names 你的仓库名 --region us-east-1确认仓库确实在指定区域创建成功。确保推送命令、登录命令中的区域参数完全一致,跨区域推送会直接导致连接失败。

  • 检查Docker客户端版本兼容性
    旧版本Docker客户端可能和ECR的TLS协议不兼容,引发连接中断。执行docker version查看客户端版本,低于20.10的版本建议升级到最新稳定版后再尝试推送。

  • 排查本地安全软件与代理干扰
    即使更换了网络,本地防火墙、杀毒软件可能拦截Docker的出站HTTPS连接,临时关闭这类软件测试。如果使用了代理,需在Docker设置中配置ECR域名的代理白名单,或者直接关闭代理后重试。

  • 确认AWS CLI凭证的有效性
    执行aws sts get-caller-identity验证当前CLI使用的IAM用户身份正确,能正常返回账号ID、用户ID等信息。有时登录成功但会话已过期,重新执行登录命令:

    aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin 你的ECR仓库URI
    

    确保登录会话处于有效状态。

  • 测试ECR端点的网络连通性
    curl -v https://你的ECR仓库URI测试本地到ECR端点的连通性,查看是否存在SSL握手失败、连接超时等问题。如果是VPC内的机器,还要检查安全组、网络ACL是否允许出站访问443端口。

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

火山引擎 最新活动