无法将我的代码推送到 AWS EB
Posted
技术标签:
【中文标题】无法将我的代码推送到 AWS EB【英文标题】:Not able to push my code into AWS EB 【发布时间】:2014-03-18 01:40:28 【问题描述】:我一直面临将我的 ruby on rails 代码推送到 AWS ElasticBeansTalk 服务器的问题。我第一次能够初始化 EB,提交并推送代码并尝试运行 EB 服务器。一切都很好,但是在几次提交之后,突然它引发了如下异常。
remote: error: Unable to create application version: You cannot have more than 500 Application Versions. Either remove some Application Versions or request a limit increase.
我不知道该怎么做。 谁能帮我清楚地实现解决方案吗? 提前致谢。
【问题讨论】:
【参考方案1】:错误代码表明您已将大量构建推送到 Elastic Beanstalk 环境中。尝试进入您的 AWS 控制台,然后转到 Elastic Beanstalk
,然后从您的应用程序的 Actions
按钮中选择 View Application Versions
。
您很可能会在这里找到 500 个不同版本的应用程序。尽可能多地选择旧的,然后执行Delete
删除这些。那你应该可以继续了。
(当然,如果我的预感是正确的,一个更有趣的问题是到底您是如何成功上传 500 个不同版本的应用程序的。我没有运行 Ruby on Rails,所以我对那个环境不太熟悉......)
祝你好运!
【讨论】:
如果您持续部署到生产环境并使用git aws.push
来完成,这非常容易。 :)
请注意,有一个新命令可以帮助自动执行此操作:***.com/a/30060544/827254【参考方案2】:
删除旧的应用程序版本后,git aws.push 又开始工作了。如果 git aws.push 返回版本限制错误会很好,因为它会节省很多时间。
所以请按照以下步骤解决此问题。
-
登录控制台
转到 Elastic Beanstalk 并选择您的应用程序和环境
在文本“正在运行的版本”下方找到“上传和部署”按钮并单击它
要部署以前的版本,请转到“应用程序版本”页面。
选择您的最后一次提交并删除此版本标签。
6 再次尝试使用新版本进行部署。
【讨论】:
【参考方案3】:使用eb labs cleanup-versions --num-to-leave=some_value
留下最后一个应用程序版本的“some_value”数量,使用eb labs cleanup-versions --help
获得可用命令的完整列表。请注意,eb labs 是实验分支,其语法可能因 eb cli 版本而异。
【讨论】:
以上是关于无法将我的代码推送到 AWS EB的主要内容,如果未能解决你的问题,请参考以下文章
Deploybot 将我的存储库推送到 AWS EC2 上的哪个位置?