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

为何AWS CDK推送镜像时出现停滞?

AWS CDK 镜像推送停滞问题排查与解决

问题现象

部署AWS CDK时,镜像推送环节停滞,日志输出如下:

推送指向仓库 [123456789123.dkr.ecr.us-east-1.amazonaws.com/cdk-hnb659fds-container-assets-123456789123-us-east-1]
5f70bf18a086: 准备中
...
ffb3cc8166fd: 已推送
41cc91312edea76dd64e98cc1c80d6c3751c805cbf8e6c8d7eda37f751ac2474: 摘要: sha256:bac65befc114dca10dc6ba6ab422ccbcb45d5ad090f77527f098cd4cf13fa70f 大小: 3242

排查与解决方法

  • 检查网络连通性:目标ECR仓库位于us-east-1区域,测试本地网络到该仓库地址的连通性。可尝试更换网络环境(如切换到有线网络、更换DNS为8.8.8.8)。
  • 重启Docker并清理缓存:Docker守护进程异常可能导致推送停滞,执行以下命令:
    # 重启Docker服务(根据操作系统调整命令)
    sudo systemctl restart docker
    # 清理Docker缓存
    docker system prune -a
    
  • 调整CDK部署超时参数:增加部署超时时间并降低资产并行上传数量:
    cdk deploy --asset-parallelism 1 --timeout 300
    
  • 验证ECR权限:确保当前AWS身份拥有以下ECR权限:ecr:GetDownloadUrlForLayer、ecr:BatchGetImage、ecr:BatchCheckLayerAvailability、ecr:InitiateLayerUpload、ecr:UploadLayerPart、ecr:CompleteLayerUpload、ecr:PutImage。
  • 手动推送镜像:跳过CDK自动推送,手动完成镜像上传:
    1. 登录ECR仓库:
      aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin 123456789123.dkr.ecr.us-east-1.amazonaws.com
      
    2. 为本地镜像添加ECR标签:
      docker tag [你的本地镜像ID] 123456789123.dkr.ecr.us-east-1.amazonaws.com/cdk-hnb659fds-container-assets-123456789123-us-east-1:latest
      
    3. 执行推送:
      docker push 123456789123.dkr.ecr.us-east-1.amazonaws.com/cdk-hnb659fds-container-assets-123456789123-us-east-1:latest
      
  • 同步CDK版本:确保本地全局CDK版本与项目依赖版本一致,升级到最新稳定版:
    npm install -g aws-cdk@latest
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 07:37:20