无法部署 - 错误:您的应用程序版本不能超过500个

Tal*_*Tal 41 amazon-elastic-beanstalk

部署到EB时出现以下错误:

错误:您的应用程序版本不能超过500个.删除一些应用程序版本或请求限制增加.

我手动删除了一些版本.由于此限制,我不希望部署失败.Elastic Beanstalk中有没有办法自动驱逐未使用的版本?

Roh*_*nga 66

最近在eb cli(v3.3)中添加了一个功能来清理旧版本

https://m.reddit.com/r/aws/comments/340ce0/whats_the_thinking_behind_beanstalks_versioning/

从reddit链接复制命令

$ eb labs cleanup-versions --help
usage: eb labs cleanup-versions [options...]

Cleans up old application versions.

optional arguments:
--num-to-leave NUM    number of versions to leave DEFAULT=10
--older-than DAYS     delete only versions older than x days DEFAULT=60
--force               don't prompt for confirmation
Run Code Online (Sandbox Code Playgroud)


Nat*_*ron 17

您现在可以从AWS控制台管理生命周期策略.

  1. 在您的环境中找到应用程序版本菜单:

应用版本菜单

  1. 单击右上角的"设置"按钮,您将能够配置要保留的版本数量: 生命周期政策

注意

配置应用程序版本生命周期设置文档:

每次创建新的应用程序版本时,Elastic Beanstalk都会应用应用程序的生命周期策略,并且每次应用生命周期策略时都会删除最多100个版本.Elastic Beanstalk在创建新版本后删除旧版本,并且不会将新版本计入策略中定义的最大版本数.

Elastic Beanstalk不会删除当前正由环境使用的应用程序版本,也不会删除部署到触发策略前不到十周终止的环境的应用程序版本.

应用程序版本限制适用于区域中的所有应用程序.如果您有多个应用程序,请使用适当的生命周期策略配置每个应用程序以避免达到限制.如果应用程序版本创建成功,Elastic Beanstalk仅应用策略,因此如果您已达到限制,则必须在创建新版本之前手动删除某些版本.

  • 编辑 - 回答了我自己的问题,更新了这个答案以提供附加信息!我设置了这个,但它似乎没有追溯启动,我仍然收到太多版本错误。我当然可以暂时手动删除某些版本,但我担心最终我会看到同样的问题。是否有任何文档说明这些更改何时生效/在设置之前有太多版本时它会做什么? (2认同)

Jer*_*ert 5

在撰写此答案时,eb labs cleanup-versions它对我不起作用:No application versions to delete即使我有应用程序版本,它也会返回。

作为一种解决方法,我使用了受此答案启发的单行(相应地更改区域应用程序名称):

aws elasticbeanstalk describe-application-versions --output text --region= us-west-2 --query 'ApplicationVersions[*].[ApplicationName,VersionLabel,DateCreated]' | grep我的应用程序名称| 在读取应用版本日期时;do echo "deleting version $app $ver $date" ; aws elasticbeanstalk delete-application-version --region= us-west-2 --application-name $app --version-label $ver --delete-source-bundle; 完毕


Imr*_*oor 5

我在这里找到了解决方案,简单的解决方案是删除以前的版本,如下所述。

删除应用程序版本

  • 打开 Elastic Beanstalk 控制台,然后在区域列表中选择您的 AWS 区域。

  • 在导航窗格中,选择应用程序,然后从列表中选择应用程序的名称。

笔记

如果您有很多应用程序,请使用搜索栏来过滤应用程序列表。

在导航窗格中,找到应用程序的名称并选择应用程序版本。

  • 选择一个或多个您要删除的应用程序版本。

  • 选择操作,然后选择删除。

  • (可选)要将这些应用程序版本的应用程序源包保留在您的 Amazon Simple Storage Service (Amazon S3) 存储桶中,请清除从 Amazon S3 删除版本复选框。

  • 选择删除。

在此输入图像描述

另一种解决方案

转到版本设置并启用生命周期策略,如下所示。

在此输入图像描述 在此输入图像描述

参考:https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/applications-versions.html