gpt4 book ai didi

heroku 部署需要很长时间

转载 作者:行者123 更新时间:2023-12-02 11:48:04 25 4
gpt4 key购买 nike

我们有一个相当大的应用程序正在 Heroku 上运行...这是一个使用 browsercms 作为基础的应用程序,并且它是建立在其之上的。 Gemfile 并不是那么大(我们没有比普通应用程序更多的 gem),但由于某种原因,部署需要 15 分钟。由于所有 Assets ,编译 Assets 并将其推送到 s3(通过 assetsync)大约需要 5 分钟,但在此期间花费了剩余的 10 分钟:

----> Heroku receiving push   
-----> Removing .DS_Store files
-----> Ruby/Rails app detected
-----> Using Ruby version: ruby-1.9.3
-----> Installing dependencies using Bundler version 1.2.0
Running: bundle install --without development:test --path vendor/bundle --binstubs bin/ --deployment

有人知道为什么这部分需要这么长时间吗? gemfile 锁位于存储库中,并推送到 heroku,这是我们 gemfile 的要点:https://gist.github.com/aa44bbb06eed97736c20

编辑:我们正在使用 Rails 3.2.7

最佳答案

当 bundle 程序使用具有 git 存储库的 gem 时,它将下载整个 git 存储库以包含该 gem,而不仅仅是 master 分支或任何作为主分支的分支。

我们在使用 sferik 的 rails_admin gem 时也遇到了同样的问题。

如果您像这样指定特定分支,可能会有所帮助:

gem "browsercms", "3.5.3", git: 'git://github.com/josiahivey/browsercms.git', :branch => 'master'

一种判断方法是查看更改前后编译的 slug 大小。在我们的例子中,rails_admin 负责大约 30mb 的 slug 大小。 Heroku 也有 100mb 的 slug 大小限制,仅供引用。

您还可以尝试像这样运行 bundle 命令:

bundle pack --all

这会将你所有的 gem(应该还有 git 的,因为 --all 开关)放入你的供应商/缓存目录中。

正如 bundle 程序项目的 github 问题中所示(看最后,一个 Heroku 人的回应):

https://github.com/carlhuda/bundler/issues/67

关于heroku 部署需要很长时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12440344/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com