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

如何使用AWS CLI更新Elastic Beanstalk应用代码(替代eb deploy)

使用AWS CLI部署Elastic Beanstalk应用代码(替代eb deploy)

eb deploy本质上会完成代码打包、上传S3、创建应用版本、更新环境这一系列操作,你可以用AWS CLI分步完成这些步骤,适配已配置的MFA会话:

步骤1:打包应用代码

先将你的应用代码打包成ZIP文件,建议排除不必要的文件(如.git、本地依赖目录)以减小包体积:

zip -r my-app-deploy.zip . -x ".git/*" "node_modules/*" "venv/*"

根据你的项目类型调整排除规则。

步骤2:上传包到S3存储桶

将打包好的文件上传到AWS S3,你可以用现有Elastic Beanstalk自动创建的桶,也可以用自己的专属桶:

aws s3 cp my-app-deploy.zip s3://your-s3-bucket-name/eb-apps/my-app/v1.0.0.zip
  • 替换your-s3-bucket-name为实际的S3桶名
  • 确保当前MFA会话的IAM用户拥有该桶的s3:PutObject权限

步骤3:创建Elastic Beanstalk应用版本

基于S3中的包创建一个新的应用版本:

aws elasticbeanstalk create-application-version \
  --application-name your-eb-app-name \
  --version-label v1.0.0 \
  --source-bundle S3Bucket=your-s3-bucket-name,S3Key=eb-apps/my-app/v1.0.0.zip
  • 替换your-eb-app-name为你的Elastic Beanstalk应用名称
  • version-label建议用语义化版本号,方便后续追踪

步骤4:更新环境到新版本

将目标Elastic Beanstalk环境更新为刚创建的版本:

aws elasticbeanstalk update-environment \
  --environment-name your-eb-env-name \
  --version-label v1.0.0
  • 替换your-eb-env-name为你的环境名称

额外注意事项

  1. MFA会话验证:确保你当前的AWS CLI会话已正确加载带MFA令牌的凭证(你已更新凭证文件,无需额外操作)
  2. IAM权限检查:确保你的IAM用户策略包含以下必要权限:
    • elasticbeanstalk:CreateApplicationVersion
    • elasticbeanstalk:UpdateEnvironment
    • s3:PutObject(对应上传的S3桶)
    • 可选:elasticbeanstalk:DescribeEnvironments(用于验证部署状态)
  3. 部署状态验证:可以用以下命令查看环境更新进度:
    aws elasticbeanstalk describe-environments --environment-name your-eb-env-name
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 09:37:22